tdlib-ruby 1.0.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (670) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.gitmodules +3 -0
  4. data/.travis.yml +2 -3
  5. data/ChangeLog.md +9 -0
  6. data/README.md +49 -46
  7. data/bin/build +12 -0
  8. data/bin/parser +447 -0
  9. data/lib/tdlib-ruby.rb +4 -1
  10. data/lib/tdlib/api.rb +20 -15
  11. data/lib/tdlib/client.rb +121 -123
  12. data/lib/tdlib/client_methods.rb +3474 -0
  13. data/lib/tdlib/errors.rb +29 -5
  14. data/lib/tdlib/types.rb +884 -0
  15. data/lib/tdlib/types/account_ttl.rb +10 -0
  16. data/lib/tdlib/types/address.rb +18 -0
  17. data/lib/tdlib/types/animation.rb +21 -0
  18. data/lib/tdlib/types/animations.rb +8 -0
  19. data/lib/tdlib/types/audio.rb +22 -0
  20. data/lib/tdlib/types/authentication_code_info.rb +15 -0
  21. data/lib/tdlib/types/authentication_code_type.rb +13 -0
  22. data/lib/tdlib/types/authentication_code_type/call.rb +8 -0
  23. data/lib/tdlib/types/authentication_code_type/flash_call.rb +9 -0
  24. data/lib/tdlib/types/authentication_code_type/sms.rb +8 -0
  25. data/lib/tdlib/types/authentication_code_type/telegram_message.rb +8 -0
  26. data/lib/tdlib/types/authorization_state.rb +18 -0
  27. data/lib/tdlib/types/authorization_state/closed.rb +9 -0
  28. data/lib/tdlib/types/authorization_state/closing.rb +7 -0
  29. data/lib/tdlib/types/authorization_state/logging_out.rb +5 -0
  30. data/lib/tdlib/types/authorization_state/ready.rb +6 -0
  31. data/lib/tdlib/types/authorization_state/wait_code.rb +13 -0
  32. data/lib/tdlib/types/authorization_state/wait_encryption_key.rb +8 -0
  33. data/lib/tdlib/types/authorization_state/wait_password.rb +13 -0
  34. data/lib/tdlib/types/authorization_state/wait_phone_number.rb +5 -0
  35. data/lib/tdlib/types/authorization_state/wait_tdlib_parameters.rb +5 -0
  36. data/lib/tdlib/types/base.rb +29 -0
  37. data/lib/tdlib/types/basic_group.rb +18 -0
  38. data/lib/tdlib/types/basic_group_full_info.rb +13 -0
  39. data/lib/tdlib/types/bot_command.rb +10 -0
  40. data/lib/tdlib/types/bot_info.rb +10 -0
  41. data/lib/tdlib/types/call.rb +14 -0
  42. data/lib/tdlib/types/call_connection.rb +16 -0
  43. data/lib/tdlib/types/call_discard_reason.rb +14 -0
  44. data/lib/tdlib/types/call_discard_reason/declined.rb +6 -0
  45. data/lib/tdlib/types/call_discard_reason/disconnected.rb +5 -0
  46. data/lib/tdlib/types/call_discard_reason/empty.rb +5 -0
  47. data/lib/tdlib/types/call_discard_reason/hung_up.rb +5 -0
  48. data/lib/tdlib/types/call_discard_reason/missed.rb +6 -0
  49. data/lib/tdlib/types/call_id.rb +8 -0
  50. data/lib/tdlib/types/call_protocol.rb +14 -0
  51. data/lib/tdlib/types/call_state.rb +15 -0
  52. data/lib/tdlib/types/call_state/discarded.rb +12 -0
  53. data/lib/tdlib/types/call_state/error.rb +9 -0
  54. data/lib/tdlib/types/call_state/exchanging_keys.rb +5 -0
  55. data/lib/tdlib/types/call_state/hanging_up.rb +5 -0
  56. data/lib/tdlib/types/call_state/pending.rb +10 -0
  57. data/lib/tdlib/types/call_state/ready.rb +16 -0
  58. data/lib/tdlib/types/callback_query_answer.rb +12 -0
  59. data/lib/tdlib/types/callback_query_payload.rb +11 -0
  60. data/lib/tdlib/types/callback_query_payload/data.rb +8 -0
  61. data/lib/tdlib/types/callback_query_payload/game.rb +8 -0
  62. data/lib/tdlib/types/chat.rb +51 -0
  63. data/lib/tdlib/types/chat_action.rb +22 -0
  64. data/lib/tdlib/types/chat_action/cancel.rb +5 -0
  65. data/lib/tdlib/types/chat_action/choosing_contact.rb +5 -0
  66. data/lib/tdlib/types/chat_action/choosing_location.rb +5 -0
  67. data/lib/tdlib/types/chat_action/recording_video.rb +5 -0
  68. data/lib/tdlib/types/chat_action/recording_video_note.rb +5 -0
  69. data/lib/tdlib/types/chat_action/recording_voice_note.rb +5 -0
  70. data/lib/tdlib/types/chat_action/start_playing_game.rb +5 -0
  71. data/lib/tdlib/types/chat_action/typing.rb +5 -0
  72. data/lib/tdlib/types/chat_action/uploading_document.rb +8 -0
  73. data/lib/tdlib/types/chat_action/uploading_photo.rb +8 -0
  74. data/lib/tdlib/types/chat_action/uploading_video.rb +8 -0
  75. data/lib/tdlib/types/chat_action/uploading_video_note.rb +8 -0
  76. data/lib/tdlib/types/chat_action/uploading_voice_note.rb +8 -0
  77. data/lib/tdlib/types/chat_event.rb +14 -0
  78. data/lib/tdlib/types/chat_event_action.rb +26 -0
  79. data/lib/tdlib/types/chat_event_action/description_changed.rb +10 -0
  80. data/lib/tdlib/types/chat_event_action/invites_toggled.rb +8 -0
  81. data/lib/tdlib/types/chat_event_action/is_all_history_available_toggled.rb +8 -0
  82. data/lib/tdlib/types/chat_event_action/member_invited.rb +10 -0
  83. data/lib/tdlib/types/chat_event_action/member_joined.rb +5 -0
  84. data/lib/tdlib/types/chat_event_action/member_left.rb +5 -0
  85. data/lib/tdlib/types/chat_event_action/member_promoted.rb +12 -0
  86. data/lib/tdlib/types/chat_event_action/member_restricted.rb +12 -0
  87. data/lib/tdlib/types/chat_event_action/message_deleted.rb +8 -0
  88. data/lib/tdlib/types/chat_event_action/message_edited.rb +10 -0
  89. data/lib/tdlib/types/chat_event_action/message_pinned.rb +8 -0
  90. data/lib/tdlib/types/chat_event_action/message_unpinned.rb +5 -0
  91. data/lib/tdlib/types/chat_event_action/photo_changed.rb +10 -0
  92. data/lib/tdlib/types/chat_event_action/sign_messages_toggled.rb +8 -0
  93. data/lib/tdlib/types/chat_event_action/sticker_set_changed.rb +10 -0
  94. data/lib/tdlib/types/chat_event_action/title_changed.rb +10 -0
  95. data/lib/tdlib/types/chat_event_action/username_changed.rb +10 -0
  96. data/lib/tdlib/types/chat_event_log_filters.rb +27 -0
  97. data/lib/tdlib/types/chat_events.rb +8 -0
  98. data/lib/tdlib/types/chat_invite_link.rb +8 -0
  99. data/lib/tdlib/types/chat_invite_link_info.rb +20 -0
  100. data/lib/tdlib/types/chat_member.rb +18 -0
  101. data/lib/tdlib/types/chat_member_status.rb +15 -0
  102. data/lib/tdlib/types/chat_member_status/administrator.rb +29 -0
  103. data/lib/tdlib/types/chat_member_status/banned.rb +11 -0
  104. data/lib/tdlib/types/chat_member_status/creator.rb +8 -0
  105. data/lib/tdlib/types/chat_member_status/left.rb +5 -0
  106. data/lib/tdlib/types/chat_member_status/member.rb +5 -0
  107. data/lib/tdlib/types/chat_member_status/restricted.rb +27 -0
  108. data/lib/tdlib/types/chat_members.rb +10 -0
  109. data/lib/tdlib/types/chat_members_filter.rb +14 -0
  110. data/lib/tdlib/types/chat_members_filter/administrators.rb +5 -0
  111. data/lib/tdlib/types/chat_members_filter/banned.rb +5 -0
  112. data/lib/tdlib/types/chat_members_filter/bots.rb +5 -0
  113. data/lib/tdlib/types/chat_members_filter/members.rb +5 -0
  114. data/lib/tdlib/types/chat_members_filter/restricted.rb +5 -0
  115. data/lib/tdlib/types/chat_notification_settings.rb +22 -0
  116. data/lib/tdlib/types/chat_photo.rb +10 -0
  117. data/lib/tdlib/types/chat_report_reason.rb +14 -0
  118. data/lib/tdlib/types/chat_report_reason/copyright.rb +5 -0
  119. data/lib/tdlib/types/chat_report_reason/custom.rb +8 -0
  120. data/lib/tdlib/types/chat_report_reason/pornography.rb +5 -0
  121. data/lib/tdlib/types/chat_report_reason/spam.rb +5 -0
  122. data/lib/tdlib/types/chat_report_reason/violence.rb +5 -0
  123. data/lib/tdlib/types/chat_report_spam_state.rb +8 -0
  124. data/lib/tdlib/types/chat_type.rb +13 -0
  125. data/lib/tdlib/types/chat_type/basic_group.rb +8 -0
  126. data/lib/tdlib/types/chat_type/private.rb +8 -0
  127. data/lib/tdlib/types/chat_type/secret.rb +10 -0
  128. data/lib/tdlib/types/chat_type/supergroup.rb +11 -0
  129. data/lib/tdlib/types/chats.rb +8 -0
  130. data/lib/tdlib/types/check_chat_username_result.rb +14 -0
  131. data/lib/tdlib/types/check_chat_username_result/ok.rb +5 -0
  132. data/lib/tdlib/types/check_chat_username_result/public_chats_too_much.rb +5 -0
  133. data/lib/tdlib/types/check_chat_username_result/public_groups_unavailable.rb +5 -0
  134. data/lib/tdlib/types/check_chat_username_result/username_invalid.rb +5 -0
  135. data/lib/tdlib/types/check_chat_username_result/username_occupied.rb +5 -0
  136. data/lib/tdlib/types/connected_website.rb +25 -0
  137. data/lib/tdlib/types/connected_websites.rb +8 -0
  138. data/lib/tdlib/types/connection_state.rb +14 -0
  139. data/lib/tdlib/types/connection_state/connecting.rb +5 -0
  140. data/lib/tdlib/types/connection_state/connecting_to_proxy.rb +5 -0
  141. data/lib/tdlib/types/connection_state/ready.rb +5 -0
  142. data/lib/tdlib/types/connection_state/updating.rb +5 -0
  143. data/lib/tdlib/types/connection_state/waiting_for_network.rb +6 -0
  144. data/lib/tdlib/types/contact.rb +16 -0
  145. data/lib/tdlib/types/count.rb +8 -0
  146. data/lib/tdlib/types/custom_request_result.rb +8 -0
  147. data/lib/tdlib/types/date.rb +12 -0
  148. data/lib/tdlib/types/dated_file.rb +10 -0
  149. data/lib/tdlib/types/deep_link_info.rb +10 -0
  150. data/lib/tdlib/types/device_token.rb +22 -0
  151. data/lib/tdlib/types/device_token/apple_push.rb +10 -0
  152. data/lib/tdlib/types/device_token/apple_push_vo_ip.rb +10 -0
  153. data/lib/tdlib/types/device_token/black_berry_push.rb +8 -0
  154. data/lib/tdlib/types/device_token/google_cloud_messaging.rb +8 -0
  155. data/lib/tdlib/types/device_token/microsoft_push.rb +8 -0
  156. data/lib/tdlib/types/device_token/microsoft_push_vo_ip.rb +8 -0
  157. data/lib/tdlib/types/device_token/simple_push.rb +9 -0
  158. data/lib/tdlib/types/device_token/tizen_push.rb +8 -0
  159. data/lib/tdlib/types/device_token/ubuntu_push.rb +8 -0
  160. data/lib/tdlib/types/device_token/web_push.rb +13 -0
  161. data/lib/tdlib/types/device_token/windows_push.rb +9 -0
  162. data/lib/tdlib/types/document.rb +14 -0
  163. data/lib/tdlib/types/draft_message.rb +11 -0
  164. data/lib/tdlib/types/email_address_authentication_code_info.rb +10 -0
  165. data/lib/tdlib/types/encrypted_credentials.rb +12 -0
  166. data/lib/tdlib/types/encrypted_passport_element.rb +25 -0
  167. data/lib/tdlib/types/error.rb +12 -0
  168. data/lib/tdlib/types/file.rb +18 -0
  169. data/lib/tdlib/types/file_type.rb +25 -0
  170. data/lib/tdlib/types/file_type/animation.rb +5 -0
  171. data/lib/tdlib/types/file_type/audio.rb +5 -0
  172. data/lib/tdlib/types/file_type/document.rb +5 -0
  173. data/lib/tdlib/types/file_type/none.rb +5 -0
  174. data/lib/tdlib/types/file_type/photo.rb +5 -0
  175. data/lib/tdlib/types/file_type/profile_photo.rb +5 -0
  176. data/lib/tdlib/types/file_type/secret.rb +5 -0
  177. data/lib/tdlib/types/file_type/secret_thumbnail.rb +5 -0
  178. data/lib/tdlib/types/file_type/secure.rb +5 -0
  179. data/lib/tdlib/types/file_type/sticker.rb +5 -0
  180. data/lib/tdlib/types/file_type/thumbnail.rb +5 -0
  181. data/lib/tdlib/types/file_type/unknown.rb +5 -0
  182. data/lib/tdlib/types/file_type/video.rb +5 -0
  183. data/lib/tdlib/types/file_type/video_note.rb +5 -0
  184. data/lib/tdlib/types/file_type/voice_note.rb +5 -0
  185. data/lib/tdlib/types/file_type/wallpaper.rb +5 -0
  186. data/lib/tdlib/types/formatted_text.rb +10 -0
  187. data/lib/tdlib/types/found_messages.rb +10 -0
  188. data/lib/tdlib/types/game.rb +21 -0
  189. data/lib/tdlib/types/game_high_score.rb +12 -0
  190. data/lib/tdlib/types/game_high_scores.rb +8 -0
  191. data/lib/tdlib/types/hashtags.rb +8 -0
  192. data/lib/tdlib/types/identity_document.rb +19 -0
  193. data/lib/tdlib/types/imported_contacts.rb +12 -0
  194. data/lib/tdlib/types/inline_keyboard_button.rb +10 -0
  195. data/lib/tdlib/types/inline_keyboard_button_type.rb +14 -0
  196. data/lib/tdlib/types/inline_keyboard_button_type/buy.rb +7 -0
  197. data/lib/tdlib/types/inline_keyboard_button_type/callback.rb +8 -0
  198. data/lib/tdlib/types/inline_keyboard_button_type/callback_game.rb +7 -0
  199. data/lib/tdlib/types/inline_keyboard_button_type/switch_inline.rb +10 -0
  200. data/lib/tdlib/types/inline_keyboard_button_type/url.rb +8 -0
  201. data/lib/tdlib/types/inline_query_result.rb +21 -0
  202. data/lib/tdlib/types/inline_query_result/animation.rb +12 -0
  203. data/lib/tdlib/types/inline_query_result/article.rb +18 -0
  204. data/lib/tdlib/types/inline_query_result/audio.rb +10 -0
  205. data/lib/tdlib/types/inline_query_result/contact.rb +12 -0
  206. data/lib/tdlib/types/inline_query_result/document.rb +14 -0
  207. data/lib/tdlib/types/inline_query_result/game.rb +10 -0
  208. data/lib/tdlib/types/inline_query_result/location.rb +14 -0
  209. data/lib/tdlib/types/inline_query_result/photo.rb +14 -0
  210. data/lib/tdlib/types/inline_query_result/sticker.rb +10 -0
  211. data/lib/tdlib/types/inline_query_result/venue.rb +12 -0
  212. data/lib/tdlib/types/inline_query_result/video.rb +14 -0
  213. data/lib/tdlib/types/inline_query_result/voice_note.rb +12 -0
  214. data/lib/tdlib/types/inline_query_results.rb +19 -0
  215. data/lib/tdlib/types/input_credentials.rb +13 -0
  216. data/lib/tdlib/types/input_credentials/android_pay.rb +8 -0
  217. data/lib/tdlib/types/input_credentials/apple_pay.rb +8 -0
  218. data/lib/tdlib/types/input_credentials/new.rb +10 -0
  219. data/lib/tdlib/types/input_credentials/saved.rb +9 -0
  220. data/lib/tdlib/types/input_file.rb +13 -0
  221. data/lib/tdlib/types/input_file/generated.rb +14 -0
  222. data/lib/tdlib/types/input_file/id.rb +8 -0
  223. data/lib/tdlib/types/input_file/local.rb +8 -0
  224. data/lib/tdlib/types/input_file/remote.rb +8 -0
  225. data/lib/tdlib/types/input_identity_document.rb +19 -0
  226. data/lib/tdlib/types/input_inline_query_result.rb +22 -0
  227. data/lib/tdlib/types/input_inline_query_result/animated_gif.rb +26 -0
  228. data/lib/tdlib/types/input_inline_query_result/animated_mpeg4.rb +27 -0
  229. data/lib/tdlib/types/input_inline_query_result/article.rb +28 -0
  230. data/lib/tdlib/types/input_inline_query_result/audio.rb +22 -0
  231. data/lib/tdlib/types/input_inline_query_result/contact.rb +22 -0
  232. data/lib/tdlib/types/input_inline_query_result/document.rb +29 -0
  233. data/lib/tdlib/types/input_inline_query_result/game.rb +12 -0
  234. data/lib/tdlib/types/input_inline_query_result/location.rb +27 -0
  235. data/lib/tdlib/types/input_inline_query_result/photo.rb +25 -0
  236. data/lib/tdlib/types/input_inline_query_result/sticker.rb +22 -0
  237. data/lib/tdlib/types/input_inline_query_result/venue.rb +22 -0
  238. data/lib/tdlib/types/input_inline_query_result/video.rb +31 -0
  239. data/lib/tdlib/types/input_inline_query_result/voice_note.rb +20 -0
  240. data/lib/tdlib/types/input_message_content.rb +24 -0
  241. data/lib/tdlib/types/input_message_content/animation.rb +18 -0
  242. data/lib/tdlib/types/input_message_content/audio.rb +18 -0
  243. data/lib/tdlib/types/input_message_content/contact.rb +8 -0
  244. data/lib/tdlib/types/input_message_content/document.rb +12 -0
  245. data/lib/tdlib/types/input_message_content/forwarded.rb +13 -0
  246. data/lib/tdlib/types/input_message_content/game.rb +10 -0
  247. data/lib/tdlib/types/input_message_content/invoice.rb +28 -0
  248. data/lib/tdlib/types/input_message_content/location.rb +11 -0
  249. data/lib/tdlib/types/input_message_content/photo.rb +22 -0
  250. data/lib/tdlib/types/input_message_content/sticker.rb +14 -0
  251. data/lib/tdlib/types/input_message_content/text.rb +14 -0
  252. data/lib/tdlib/types/input_message_content/venue.rb +8 -0
  253. data/lib/tdlib/types/input_message_content/video.rb +25 -0
  254. data/lib/tdlib/types/input_message_content/video_note.rb +14 -0
  255. data/lib/tdlib/types/input_message_content/voice_note.rb +14 -0
  256. data/lib/tdlib/types/input_passport_element.rb +22 -0
  257. data/lib/tdlib/types/input_passport_element/address.rb +8 -0
  258. data/lib/tdlib/types/input_passport_element/bank_statement.rb +8 -0
  259. data/lib/tdlib/types/input_passport_element/driver_license.rb +8 -0
  260. data/lib/tdlib/types/input_passport_element/email_address.rb +8 -0
  261. data/lib/tdlib/types/input_passport_element/identity_card.rb +8 -0
  262. data/lib/tdlib/types/input_passport_element/internal_passport.rb +8 -0
  263. data/lib/tdlib/types/input_passport_element/passport.rb +8 -0
  264. data/lib/tdlib/types/input_passport_element/passport_registration.rb +8 -0
  265. data/lib/tdlib/types/input_passport_element/personal_details.rb +8 -0
  266. data/lib/tdlib/types/input_passport_element/phone_number.rb +8 -0
  267. data/lib/tdlib/types/input_passport_element/rental_agreement.rb +8 -0
  268. data/lib/tdlib/types/input_passport_element/temporary_registration.rb +8 -0
  269. data/lib/tdlib/types/input_passport_element/utility_bill.rb +8 -0
  270. data/lib/tdlib/types/input_passport_element_error.rb +12 -0
  271. data/lib/tdlib/types/input_passport_element_error_source.rb +18 -0
  272. data/lib/tdlib/types/input_passport_element_error_source/data_field.rb +11 -0
  273. data/lib/tdlib/types/input_passport_element_error_source/file.rb +9 -0
  274. data/lib/tdlib/types/input_passport_element_error_source/files.rb +9 -0
  275. data/lib/tdlib/types/input_passport_element_error_source/front_side.rb +9 -0
  276. data/lib/tdlib/types/input_passport_element_error_source/reverse_side.rb +9 -0
  277. data/lib/tdlib/types/input_passport_element_error_source/selfie.rb +9 -0
  278. data/lib/tdlib/types/input_passport_element_error_source/translation_file.rb +9 -0
  279. data/lib/tdlib/types/input_passport_element_error_source/translation_files.rb +9 -0
  280. data/lib/tdlib/types/input_passport_element_error_source/unspecified.rb +9 -0
  281. data/lib/tdlib/types/input_personal_document.rb +11 -0
  282. data/lib/tdlib/types/input_sticker.rb +14 -0
  283. data/lib/tdlib/types/input_thumbnail.rb +16 -0
  284. data/lib/tdlib/types/invoice.rb +27 -0
  285. data/lib/tdlib/types/keyboard_button.rb +10 -0
  286. data/lib/tdlib/types/keyboard_button_type.rb +12 -0
  287. data/lib/tdlib/types/keyboard_button_type/request_location.rb +5 -0
  288. data/lib/tdlib/types/keyboard_button_type/request_phone_number.rb +5 -0
  289. data/lib/tdlib/types/keyboard_button_type/text.rb +5 -0
  290. data/lib/tdlib/types/labeled_price_part.rb +10 -0
  291. data/lib/tdlib/types/language_pack_info.rb +14 -0
  292. data/lib/tdlib/types/language_pack_string.rb +10 -0
  293. data/lib/tdlib/types/language_pack_string_value.rb +12 -0
  294. data/lib/tdlib/types/language_pack_string_value/deleted.rb +5 -0
  295. data/lib/tdlib/types/language_pack_string_value/ordinary.rb +8 -0
  296. data/lib/tdlib/types/language_pack_string_value/pluralized.rb +18 -0
  297. data/lib/tdlib/types/language_pack_strings.rb +8 -0
  298. data/lib/tdlib/types/link_state.rb +13 -0
  299. data/lib/tdlib/types/link_state/is_contact.rb +5 -0
  300. data/lib/tdlib/types/link_state/knows_phone_number.rb +5 -0
  301. data/lib/tdlib/types/link_state/none.rb +5 -0
  302. data/lib/tdlib/types/local_file.rb +25 -0
  303. data/lib/tdlib/types/localization_target_info.rb +8 -0
  304. data/lib/tdlib/types/location.rb +10 -0
  305. data/lib/tdlib/types/mask_point.rb +13 -0
  306. data/lib/tdlib/types/mask_point/chin.rb +5 -0
  307. data/lib/tdlib/types/mask_point/eyes.rb +5 -0
  308. data/lib/tdlib/types/mask_point/forehead.rb +5 -0
  309. data/lib/tdlib/types/mask_point/mouth.rb +5 -0
  310. data/lib/tdlib/types/mask_position.rb +17 -0
  311. data/lib/tdlib/types/message.rb +59 -0
  312. data/lib/tdlib/types/message_content.rb +48 -0
  313. data/lib/tdlib/types/message_content/animation.rb +13 -0
  314. data/lib/tdlib/types/message_content/audio.rb +10 -0
  315. data/lib/tdlib/types/message_content/basic_group_chat_create.rb +10 -0
  316. data/lib/tdlib/types/message_content/call.rb +10 -0
  317. data/lib/tdlib/types/message_content/chat_add_members.rb +8 -0
  318. data/lib/tdlib/types/message_content/chat_change_photo.rb +8 -0
  319. data/lib/tdlib/types/message_content/chat_change_title.rb +8 -0
  320. data/lib/tdlib/types/message_content/chat_delete_member.rb +8 -0
  321. data/lib/tdlib/types/message_content/chat_delete_photo.rb +5 -0
  322. data/lib/tdlib/types/message_content/chat_join_by_link.rb +5 -0
  323. data/lib/tdlib/types/message_content/chat_set_ttl.rb +8 -0
  324. data/lib/tdlib/types/message_content/chat_upgrade_from.rb +10 -0
  325. data/lib/tdlib/types/message_content/chat_upgrade_to.rb +8 -0
  326. data/lib/tdlib/types/message_content/contact.rb +8 -0
  327. data/lib/tdlib/types/message_content/contact_registered.rb +5 -0
  328. data/lib/tdlib/types/message_content/custom_service_action.rb +8 -0
  329. data/lib/tdlib/types/message_content/document.rb +10 -0
  330. data/lib/tdlib/types/message_content/expired_photo.rb +5 -0
  331. data/lib/tdlib/types/message_content/expired_video.rb +5 -0
  332. data/lib/tdlib/types/message_content/game.rb +8 -0
  333. data/lib/tdlib/types/message_content/game_score.rb +13 -0
  334. data/lib/tdlib/types/message_content/invoice.rb +26 -0
  335. data/lib/tdlib/types/message_content/location.rb +14 -0
  336. data/lib/tdlib/types/message_content/passport_data_received.rb +10 -0
  337. data/lib/tdlib/types/message_content/passport_data_sent.rb +8 -0
  338. data/lib/tdlib/types/message_content/payment_successful.rb +13 -0
  339. data/lib/tdlib/types/message_content/payment_successful_bot.rb +24 -0
  340. data/lib/tdlib/types/message_content/photo.rb +12 -0
  341. data/lib/tdlib/types/message_content/pin_message.rb +8 -0
  342. data/lib/tdlib/types/message_content/screenshot_taken.rb +5 -0
  343. data/lib/tdlib/types/message_content/sticker.rb +8 -0
  344. data/lib/tdlib/types/message_content/supergroup_chat_create.rb +8 -0
  345. data/lib/tdlib/types/message_content/text.rb +10 -0
  346. data/lib/tdlib/types/message_content/unsupported.rb +5 -0
  347. data/lib/tdlib/types/message_content/venue.rb +8 -0
  348. data/lib/tdlib/types/message_content/video.rb +13 -0
  349. data/lib/tdlib/types/message_content/video_note.rb +13 -0
  350. data/lib/tdlib/types/message_content/voice_note.rb +12 -0
  351. data/lib/tdlib/types/message_content/website_connected.rb +8 -0
  352. data/lib/tdlib/types/message_forward_info.rb +11 -0
  353. data/lib/tdlib/types/message_forward_info/message_forwarded_from_user.rb +16 -0
  354. data/lib/tdlib/types/message_forward_info/message_forwarded_post.rb +21 -0
  355. data/lib/tdlib/types/message_sending_state.rb +11 -0
  356. data/lib/tdlib/types/message_sending_state/failed.rb +5 -0
  357. data/lib/tdlib/types/message_sending_state/pending.rb +5 -0
  358. data/lib/tdlib/types/messages.rb +10 -0
  359. data/lib/tdlib/types/network_statistics.rb +10 -0
  360. data/lib/tdlib/types/network_statistics_entry.rb +11 -0
  361. data/lib/tdlib/types/network_statistics_entry/call.rb +15 -0
  362. data/lib/tdlib/types/network_statistics_entry/file.rb +15 -0
  363. data/lib/tdlib/types/network_type.rb +14 -0
  364. data/lib/tdlib/types/network_type/mobile.rb +5 -0
  365. data/lib/tdlib/types/network_type/mobile_roaming.rb +5 -0
  366. data/lib/tdlib/types/network_type/none.rb +5 -0
  367. data/lib/tdlib/types/network_type/other.rb +5 -0
  368. data/lib/tdlib/types/network_type/wi_fi.rb +5 -0
  369. data/lib/tdlib/types/notification_settings_scope.rb +11 -0
  370. data/lib/tdlib/types/notification_settings_scope/group_chats.rb +6 -0
  371. data/lib/tdlib/types/notification_settings_scope/private_chats.rb +6 -0
  372. data/lib/tdlib/types/ok.rb +5 -0
  373. data/lib/tdlib/types/option_value.rb +13 -0
  374. data/lib/tdlib/types/option_value/boolean.rb +8 -0
  375. data/lib/tdlib/types/option_value/empty.rb +5 -0
  376. data/lib/tdlib/types/option_value/integer.rb +8 -0
  377. data/lib/tdlib/types/option_value/string.rb +8 -0
  378. data/lib/tdlib/types/order_info.rb +14 -0
  379. data/lib/tdlib/types/page_block.rb +32 -0
  380. data/lib/tdlib/types/page_block/anchor.rb +8 -0
  381. data/lib/tdlib/types/page_block/animation.rb +12 -0
  382. data/lib/tdlib/types/page_block/audio.rb +10 -0
  383. data/lib/tdlib/types/page_block/author_date.rb +10 -0
  384. data/lib/tdlib/types/page_block/block_quote.rb +10 -0
  385. data/lib/tdlib/types/page_block/chat_link.rb +12 -0
  386. data/lib/tdlib/types/page_block/collage.rb +10 -0
  387. data/lib/tdlib/types/page_block/cover.rb +8 -0
  388. data/lib/tdlib/types/page_block/divider.rb +5 -0
  389. data/lib/tdlib/types/page_block/embedded.rb +22 -0
  390. data/lib/tdlib/types/page_block/embedded_post.rb +18 -0
  391. data/lib/tdlib/types/page_block/footer.rb +8 -0
  392. data/lib/tdlib/types/page_block/header.rb +8 -0
  393. data/lib/tdlib/types/page_block/list.rb +10 -0
  394. data/lib/tdlib/types/page_block/paragraph.rb +8 -0
  395. data/lib/tdlib/types/page_block/photo.rb +10 -0
  396. data/lib/tdlib/types/page_block/preformatted.rb +10 -0
  397. data/lib/tdlib/types/page_block/pull_quote.rb +10 -0
  398. data/lib/tdlib/types/page_block/slideshow.rb +10 -0
  399. data/lib/tdlib/types/page_block/subheader.rb +8 -0
  400. data/lib/tdlib/types/page_block/subtitle.rb +8 -0
  401. data/lib/tdlib/types/page_block/title.rb +8 -0
  402. data/lib/tdlib/types/page_block/video.rb +14 -0
  403. data/lib/tdlib/types/passport_authorization_form.rb +17 -0
  404. data/lib/tdlib/types/passport_element.rb +22 -0
  405. data/lib/tdlib/types/passport_element/address.rb +8 -0
  406. data/lib/tdlib/types/passport_element/bank_statement.rb +8 -0
  407. data/lib/tdlib/types/passport_element/driver_license.rb +8 -0
  408. data/lib/tdlib/types/passport_element/email_address.rb +8 -0
  409. data/lib/tdlib/types/passport_element/identity_card.rb +8 -0
  410. data/lib/tdlib/types/passport_element/internal_passport.rb +8 -0
  411. data/lib/tdlib/types/passport_element/passport.rb +8 -0
  412. data/lib/tdlib/types/passport_element/passport_registration.rb +8 -0
  413. data/lib/tdlib/types/passport_element/personal_details.rb +8 -0
  414. data/lib/tdlib/types/passport_element/phone_number.rb +8 -0
  415. data/lib/tdlib/types/passport_element/rental_agreement.rb +8 -0
  416. data/lib/tdlib/types/passport_element/temporary_registration.rb +8 -0
  417. data/lib/tdlib/types/passport_element/utility_bill.rb +8 -0
  418. data/lib/tdlib/types/passport_element_error.rb +12 -0
  419. data/lib/tdlib/types/passport_element_error_source.rb +18 -0
  420. data/lib/tdlib/types/passport_element_error_source/data_field.rb +9 -0
  421. data/lib/tdlib/types/passport_element_error_source/file.rb +6 -0
  422. data/lib/tdlib/types/passport_element_error_source/files.rb +6 -0
  423. data/lib/tdlib/types/passport_element_error_source/front_side.rb +6 -0
  424. data/lib/tdlib/types/passport_element_error_source/reverse_side.rb +6 -0
  425. data/lib/tdlib/types/passport_element_error_source/selfie.rb +6 -0
  426. data/lib/tdlib/types/passport_element_error_source/translation_file.rb +6 -0
  427. data/lib/tdlib/types/passport_element_error_source/translation_files.rb +6 -0
  428. data/lib/tdlib/types/passport_element_error_source/unspecified.rb +6 -0
  429. data/lib/tdlib/types/passport_element_type.rb +22 -0
  430. data/lib/tdlib/types/passport_element_type/address.rb +5 -0
  431. data/lib/tdlib/types/passport_element_type/bank_statement.rb +5 -0
  432. data/lib/tdlib/types/passport_element_type/driver_license.rb +5 -0
  433. data/lib/tdlib/types/passport_element_type/email_address.rb +5 -0
  434. data/lib/tdlib/types/passport_element_type/identity_card.rb +5 -0
  435. data/lib/tdlib/types/passport_element_type/internal_passport.rb +5 -0
  436. data/lib/tdlib/types/passport_element_type/passport.rb +5 -0
  437. data/lib/tdlib/types/passport_element_type/passport_registration.rb +5 -0
  438. data/lib/tdlib/types/passport_element_type/personal_details.rb +5 -0
  439. data/lib/tdlib/types/passport_element_type/phone_number.rb +5 -0
  440. data/lib/tdlib/types/passport_element_type/rental_agreement.rb +5 -0
  441. data/lib/tdlib/types/passport_element_type/temporary_registration.rb +5 -0
  442. data/lib/tdlib/types/passport_element_type/utility_bill.rb +5 -0
  443. data/lib/tdlib/types/passport_elements.rb +8 -0
  444. data/lib/tdlib/types/passport_required_element.rb +9 -0
  445. data/lib/tdlib/types/passport_suitable_element.rb +15 -0
  446. data/lib/tdlib/types/password_state.rb +17 -0
  447. data/lib/tdlib/types/payment_form.rb +23 -0
  448. data/lib/tdlib/types/payment_receipt.rb +18 -0
  449. data/lib/tdlib/types/payment_result.rb +11 -0
  450. data/lib/tdlib/types/payments_provider_stripe.rb +14 -0
  451. data/lib/tdlib/types/personal_details.rb +26 -0
  452. data/lib/tdlib/types/personal_document.rb +11 -0
  453. data/lib/tdlib/types/photo.rb +12 -0
  454. data/lib/tdlib/types/photo_size.rb +14 -0
  455. data/lib/tdlib/types/profile_photo.rb +13 -0
  456. data/lib/tdlib/types/proxies.rb +8 -0
  457. data/lib/tdlib/types/proxy.rb +18 -0
  458. data/lib/tdlib/types/proxy_type.rb +12 -0
  459. data/lib/tdlib/types/proxy_type/http.rb +13 -0
  460. data/lib/tdlib/types/proxy_type/mtproto.rb +8 -0
  461. data/lib/tdlib/types/proxy_type/socks5.rb +10 -0
  462. data/lib/tdlib/types/public_message_link.rb +10 -0
  463. data/lib/tdlib/types/recovery_email_address.rb +8 -0
  464. data/lib/tdlib/types/remote_file.rb +22 -0
  465. data/lib/tdlib/types/reply_markup.rb +13 -0
  466. data/lib/tdlib/types/reply_markup/force_reply.rb +10 -0
  467. data/lib/tdlib/types/reply_markup/inline_keyboard.rb +8 -0
  468. data/lib/tdlib/types/reply_markup/remove_keyboard.rb +11 -0
  469. data/lib/tdlib/types/reply_markup/show_keyboard.rb +16 -0
  470. data/lib/tdlib/types/rich_text.rb +18 -0
  471. data/lib/tdlib/types/rich_text/bold.rb +8 -0
  472. data/lib/tdlib/types/rich_text/email_address.rb +10 -0
  473. data/lib/tdlib/types/rich_text/fixed.rb +8 -0
  474. data/lib/tdlib/types/rich_text/italic.rb +8 -0
  475. data/lib/tdlib/types/rich_text/plain.rb +8 -0
  476. data/lib/tdlib/types/rich_text/s.rb +8 -0
  477. data/lib/tdlib/types/rich_text/strikethrough.rb +8 -0
  478. data/lib/tdlib/types/rich_text/underline.rb +8 -0
  479. data/lib/tdlib/types/rich_text/url.rb +10 -0
  480. data/lib/tdlib/types/saved_credentials.rb +10 -0
  481. data/lib/tdlib/types/scope_notification_settings.rb +13 -0
  482. data/lib/tdlib/types/search_messages_filter.rb +25 -0
  483. data/lib/tdlib/types/search_messages_filter/animation.rb +5 -0
  484. data/lib/tdlib/types/search_messages_filter/audio.rb +5 -0
  485. data/lib/tdlib/types/search_messages_filter/call.rb +5 -0
  486. data/lib/tdlib/types/search_messages_filter/chat_photo.rb +5 -0
  487. data/lib/tdlib/types/search_messages_filter/document.rb +5 -0
  488. data/lib/tdlib/types/search_messages_filter/empty.rb +5 -0
  489. data/lib/tdlib/types/search_messages_filter/mention.rb +5 -0
  490. data/lib/tdlib/types/search_messages_filter/missed_call.rb +5 -0
  491. data/lib/tdlib/types/search_messages_filter/photo.rb +5 -0
  492. data/lib/tdlib/types/search_messages_filter/photo_and_video.rb +5 -0
  493. data/lib/tdlib/types/search_messages_filter/unread_mention.rb +6 -0
  494. data/lib/tdlib/types/search_messages_filter/url.rb +5 -0
  495. data/lib/tdlib/types/search_messages_filter/video.rb +5 -0
  496. data/lib/tdlib/types/search_messages_filter/video_note.rb +5 -0
  497. data/lib/tdlib/types/search_messages_filter/voice_and_video_note.rb +5 -0
  498. data/lib/tdlib/types/search_messages_filter/voice_note.rb +5 -0
  499. data/lib/tdlib/types/seconds.rb +8 -0
  500. data/lib/tdlib/types/secret_chat.rb +26 -0
  501. data/lib/tdlib/types/secret_chat_state.rb +12 -0
  502. data/lib/tdlib/types/secret_chat_state/closed.rb +5 -0
  503. data/lib/tdlib/types/secret_chat_state/pending.rb +5 -0
  504. data/lib/tdlib/types/secret_chat_state/ready.rb +5 -0
  505. data/lib/tdlib/types/session.rb +39 -0
  506. data/lib/tdlib/types/sessions.rb +8 -0
  507. data/lib/tdlib/types/shipping_option.rb +13 -0
  508. data/lib/tdlib/types/sticker.rb +22 -0
  509. data/lib/tdlib/types/sticker_emojis.rb +10 -0
  510. data/lib/tdlib/types/sticker_set.rb +27 -0
  511. data/lib/tdlib/types/sticker_set_info.rb +29 -0
  512. data/lib/tdlib/types/sticker_sets.rb +10 -0
  513. data/lib/tdlib/types/stickers.rb +8 -0
  514. data/lib/tdlib/types/storage_statistics.rb +12 -0
  515. data/lib/tdlib/types/storage_statistics_by_chat.rb +14 -0
  516. data/lib/tdlib/types/storage_statistics_by_file_type.rb +12 -0
  517. data/lib/tdlib/types/storage_statistics_fast.rb +12 -0
  518. data/lib/tdlib/types/supergroup.rb +40 -0
  519. data/lib/tdlib/types/supergroup_full_info.rb +39 -0
  520. data/lib/tdlib/types/supergroup_members_filter.rb +15 -0
  521. data/lib/tdlib/types/supergroup_members_filter/administrators.rb +5 -0
  522. data/lib/tdlib/types/supergroup_members_filter/banned.rb +8 -0
  523. data/lib/tdlib/types/supergroup_members_filter/bots.rb +5 -0
  524. data/lib/tdlib/types/supergroup_members_filter/recent.rb +5 -0
  525. data/lib/tdlib/types/supergroup_members_filter/restricted.rb +8 -0
  526. data/lib/tdlib/types/supergroup_members_filter/search.rb +8 -0
  527. data/lib/tdlib/types/t_me_url.rb +10 -0
  528. data/lib/tdlib/types/t_me_url_type.rb +13 -0
  529. data/lib/tdlib/types/t_me_url_type/chat_invite.rb +8 -0
  530. data/lib/tdlib/types/t_me_url_type/sticker_set.rb +8 -0
  531. data/lib/tdlib/types/t_me_url_type/supergroup.rb +8 -0
  532. data/lib/tdlib/types/t_me_url_type/user.rb +8 -0
  533. data/lib/tdlib/types/t_me_urls.rb +8 -0
  534. data/lib/tdlib/types/tdlib_parameters.rb +46 -0
  535. data/lib/tdlib/types/temporary_password_state.rb +10 -0
  536. data/lib/tdlib/types/terms_of_service.rb +12 -0
  537. data/lib/tdlib/types/text.rb +8 -0
  538. data/lib/tdlib/types/text_entities.rb +8 -0
  539. data/lib/tdlib/types/text_entity.rb +12 -0
  540. data/lib/tdlib/types/text_entity_type.rb +23 -0
  541. data/lib/tdlib/types/text_entity_type/bold.rb +5 -0
  542. data/lib/tdlib/types/text_entity_type/bot_command.rb +6 -0
  543. data/lib/tdlib/types/text_entity_type/cashtag.rb +6 -0
  544. data/lib/tdlib/types/text_entity_type/code.rb +5 -0
  545. data/lib/tdlib/types/text_entity_type/email_address.rb +5 -0
  546. data/lib/tdlib/types/text_entity_type/hashtag.rb +5 -0
  547. data/lib/tdlib/types/text_entity_type/italic.rb +5 -0
  548. data/lib/tdlib/types/text_entity_type/mention.rb +5 -0
  549. data/lib/tdlib/types/text_entity_type/mention_name.rb +8 -0
  550. data/lib/tdlib/types/text_entity_type/phone_number.rb +5 -0
  551. data/lib/tdlib/types/text_entity_type/pre.rb +5 -0
  552. data/lib/tdlib/types/text_entity_type/pre_code.rb +8 -0
  553. data/lib/tdlib/types/text_entity_type/text_url.rb +8 -0
  554. data/lib/tdlib/types/text_entity_type/url.rb +5 -0
  555. data/lib/tdlib/types/text_parse_mode.rb +11 -0
  556. data/lib/tdlib/types/text_parse_mode/html.rb +5 -0
  557. data/lib/tdlib/types/text_parse_mode/markdown.rb +5 -0
  558. data/lib/tdlib/types/top_chat_category.rb +15 -0
  559. data/lib/tdlib/types/top_chat_category/bots.rb +5 -0
  560. data/lib/tdlib/types/top_chat_category/calls.rb +5 -0
  561. data/lib/tdlib/types/top_chat_category/channels.rb +5 -0
  562. data/lib/tdlib/types/top_chat_category/groups.rb +5 -0
  563. data/lib/tdlib/types/top_chat_category/inline_bots.rb +5 -0
  564. data/lib/tdlib/types/top_chat_category/users.rb +5 -0
  565. data/lib/tdlib/types/update.rb +70 -0
  566. data/lib/tdlib/types/update/authorization_state.rb +8 -0
  567. data/lib/tdlib/types/update/basic_group.rb +9 -0
  568. data/lib/tdlib/types/update/basic_group_full_info.rb +10 -0
  569. data/lib/tdlib/types/update/call.rb +8 -0
  570. data/lib/tdlib/types/update/chat_default_disable_notification.rb +10 -0
  571. data/lib/tdlib/types/update/chat_draft_message.rb +14 -0
  572. data/lib/tdlib/types/update/chat_is_marked_as_unread.rb +10 -0
  573. data/lib/tdlib/types/update/chat_is_pinned.rb +12 -0
  574. data/lib/tdlib/types/update/chat_is_sponsored.rb +12 -0
  575. data/lib/tdlib/types/update/chat_last_message.rb +14 -0
  576. data/lib/tdlib/types/update/chat_notification_settings.rb +10 -0
  577. data/lib/tdlib/types/update/chat_order.rb +11 -0
  578. data/lib/tdlib/types/update/chat_photo.rb +10 -0
  579. data/lib/tdlib/types/update/chat_read_inbox.rb +12 -0
  580. data/lib/tdlib/types/update/chat_read_outbox.rb +10 -0
  581. data/lib/tdlib/types/update/chat_reply_markup.rb +13 -0
  582. data/lib/tdlib/types/update/chat_title.rb +10 -0
  583. data/lib/tdlib/types/update/chat_unread_mention_count.rb +10 -0
  584. data/lib/tdlib/types/update/connection_state.rb +8 -0
  585. data/lib/tdlib/types/update/delete_messages.rb +16 -0
  586. data/lib/tdlib/types/update/favorite_stickers.rb +8 -0
  587. data/lib/tdlib/types/update/file.rb +8 -0
  588. data/lib/tdlib/types/update/file_generation_start.rb +17 -0
  589. data/lib/tdlib/types/update/file_generation_stop.rb +8 -0
  590. data/lib/tdlib/types/update/installed_sticker_sets.rb +10 -0
  591. data/lib/tdlib/types/update/language_pack_strings.rb +12 -0
  592. data/lib/tdlib/types/update/message_content.rb +12 -0
  593. data/lib/tdlib/types/update/message_content_opened.rb +12 -0
  594. data/lib/tdlib/types/update/message_edited.rb +15 -0
  595. data/lib/tdlib/types/update/message_mention_read.rb +12 -0
  596. data/lib/tdlib/types/update/message_send_acknowledged.rb +14 -0
  597. data/lib/tdlib/types/update/message_send_failed.rb +16 -0
  598. data/lib/tdlib/types/update/message_send_succeeded.rb +11 -0
  599. data/lib/tdlib/types/update/message_views.rb +12 -0
  600. data/lib/tdlib/types/update/new_callback_query.rb +18 -0
  601. data/lib/tdlib/types/update/new_chat.rb +10 -0
  602. data/lib/tdlib/types/update/new_chosen_inline_result.rb +16 -0
  603. data/lib/tdlib/types/update/new_custom_event.rb +8 -0
  604. data/lib/tdlib/types/update/new_custom_query.rb +12 -0
  605. data/lib/tdlib/types/update/new_inline_callback_query.rb +16 -0
  606. data/lib/tdlib/types/update/new_inline_query.rb +16 -0
  607. data/lib/tdlib/types/update/new_message.rb +12 -0
  608. data/lib/tdlib/types/update/new_pre_checkout_query.rb +22 -0
  609. data/lib/tdlib/types/update/new_shipping_query.rb +15 -0
  610. data/lib/tdlib/types/update/option.rb +10 -0
  611. data/lib/tdlib/types/update/recent_stickers.rb +11 -0
  612. data/lib/tdlib/types/update/saved_animations.rb +8 -0
  613. data/lib/tdlib/types/update/scope_notification_settings.rb +10 -0
  614. data/lib/tdlib/types/update/secret_chat.rb +9 -0
  615. data/lib/tdlib/types/update/service_notification.rb +13 -0
  616. data/lib/tdlib/types/update/supergroup.rb +9 -0
  617. data/lib/tdlib/types/update/supergroup_full_info.rb +10 -0
  618. data/lib/tdlib/types/update/terms_of_service.rb +12 -0
  619. data/lib/tdlib/types/update/trending_sticker_sets.rb +8 -0
  620. data/lib/tdlib/types/update/unread_chat_count.rb +16 -0
  621. data/lib/tdlib/types/update/unread_message_count.rb +11 -0
  622. data/lib/tdlib/types/update/user.rb +9 -0
  623. data/lib/tdlib/types/update/user_chat_action.rb +12 -0
  624. data/lib/tdlib/types/update/user_full_info.rb +10 -0
  625. data/lib/tdlib/types/update/user_privacy_setting_rules.rb +10 -0
  626. data/lib/tdlib/types/update/user_status.rb +10 -0
  627. data/lib/tdlib/types/user.rb +41 -0
  628. data/lib/tdlib/types/user_full_info.rb +21 -0
  629. data/lib/tdlib/types/user_privacy_setting.rb +12 -0
  630. data/lib/tdlib/types/user_privacy_setting/allow_calls.rb +5 -0
  631. data/lib/tdlib/types/user_privacy_setting/allow_chat_invites.rb +5 -0
  632. data/lib/tdlib/types/user_privacy_setting/show_status.rb +5 -0
  633. data/lib/tdlib/types/user_privacy_setting_rule.rb +15 -0
  634. data/lib/tdlib/types/user_privacy_setting_rule/allow_all.rb +5 -0
  635. data/lib/tdlib/types/user_privacy_setting_rule/allow_contacts.rb +5 -0
  636. data/lib/tdlib/types/user_privacy_setting_rule/allow_users.rb +8 -0
  637. data/lib/tdlib/types/user_privacy_setting_rule/restrict_all.rb +5 -0
  638. data/lib/tdlib/types/user_privacy_setting_rule/restrict_contacts.rb +5 -0
  639. data/lib/tdlib/types/user_privacy_setting_rule/restrict_users.rb +8 -0
  640. data/lib/tdlib/types/user_privacy_setting_rules.rb +11 -0
  641. data/lib/tdlib/types/user_profile_photos.rb +10 -0
  642. data/lib/tdlib/types/user_status.rb +15 -0
  643. data/lib/tdlib/types/user_status/empty.rb +5 -0
  644. data/lib/tdlib/types/user_status/last_month.rb +5 -0
  645. data/lib/tdlib/types/user_status/last_week.rb +5 -0
  646. data/lib/tdlib/types/user_status/offline.rb +8 -0
  647. data/lib/tdlib/types/user_status/online.rb +8 -0
  648. data/lib/tdlib/types/user_status/recently.rb +5 -0
  649. data/lib/tdlib/types/user_type.rb +14 -0
  650. data/lib/tdlib/types/user_type/bot.rb +18 -0
  651. data/lib/tdlib/types/user_type/deleted.rb +7 -0
  652. data/lib/tdlib/types/user_type/regular.rb +5 -0
  653. data/lib/tdlib/types/user_type/unknown.rb +7 -0
  654. data/lib/tdlib/types/users.rb +10 -0
  655. data/lib/tdlib/types/validated_order_info.rb +11 -0
  656. data/lib/tdlib/types/venue.rb +19 -0
  657. data/lib/tdlib/types/video.rb +24 -0
  658. data/lib/tdlib/types/video_note.rb +15 -0
  659. data/lib/tdlib/types/voice_note.rb +16 -0
  660. data/lib/tdlib/types/wallpaper.rb +14 -0
  661. data/lib/tdlib/types/wallpapers.rb +8 -0
  662. data/lib/tdlib/types/web_page.rb +51 -0
  663. data/lib/tdlib/types/web_page_instant_view.rb +11 -0
  664. data/lib/tdlib/update_handler.rb +36 -0
  665. data/lib/tdlib/update_manager.rb +21 -11
  666. data/lib/tdlib/version.rb +1 -1
  667. data/spec/integration/tdlib_spec.rb +20 -15
  668. data/tdlib-ruby.gemspec +7 -12
  669. metadata +720 -9
  670. data/lib/tdlib/utils.rb +0 -7
@@ -1,8 +1,32 @@
1
- class TD::MissingLibPathError < StandardError
2
- def initialize(message = 'Please, configure the path to tdlibjson library')
3
- super
1
+ module TD
2
+ class MissingLibPathError < StandardError
3
+ def initialize(message = 'Please, configure the path to tdlibjson library')
4
+ super
5
+ end
4
6
  end
5
- end
6
7
 
7
- class TD::TimeoutError < Timeout::Error
8
+ # Proxy class that is used in failed promises to represent TDlib errors
9
+ class Error < StandardError
10
+ def initialize(td_error)
11
+ @td_error = td_error
12
+ end
13
+
14
+ def method_missing(method, *args)
15
+ @td_error.public_send(method, *args)
16
+ end
17
+
18
+ def respond_to_missing?(*args)
19
+ @td_error.respond_to?(*args)
20
+ end
21
+
22
+ def to_s
23
+ @td_error.inspect
24
+ end
25
+
26
+ def message
27
+ @td_error.message
28
+ end
29
+
30
+ alias inspect to_s
31
+ end
8
32
  end
@@ -0,0 +1,884 @@
1
+ require 'dry-struct'
2
+ require 'dry-types'
3
+
4
+ module TD::Types
5
+ include Dry::Types.module
6
+
7
+ LOOKUP_TABLE = {
8
+ 'error' => 'Error',
9
+ 'ok' => 'Ok',
10
+ 'tdlibParameters' => 'TdlibParameters',
11
+ 'AuthenticationCodeType' => 'AuthenticationCodeType',
12
+ 'authenticationCodeTypeTelegramMessage' => 'AuthenticationCodeType::TelegramMessage',
13
+ 'authenticationCodeTypeSms' => 'AuthenticationCodeType::Sms',
14
+ 'authenticationCodeTypeCall' => 'AuthenticationCodeType::Call',
15
+ 'authenticationCodeTypeFlashCall' => 'AuthenticationCodeType::FlashCall',
16
+ 'authenticationCodeInfo' => 'AuthenticationCodeInfo',
17
+ 'emailAddressAuthenticationCodeInfo' => 'EmailAddressAuthenticationCodeInfo',
18
+ 'textEntity' => 'TextEntity',
19
+ 'textEntities' => 'TextEntities',
20
+ 'formattedText' => 'FormattedText',
21
+ 'termsOfService' => 'TermsOfService',
22
+ 'AuthorizationState' => 'AuthorizationState',
23
+ 'authorizationStateWaitTdlibParameters' => 'AuthorizationState::WaitTdlibParameters',
24
+ 'authorizationStateWaitEncryptionKey' => 'AuthorizationState::WaitEncryptionKey',
25
+ 'authorizationStateWaitPhoneNumber' => 'AuthorizationState::WaitPhoneNumber',
26
+ 'authorizationStateWaitCode' => 'AuthorizationState::WaitCode',
27
+ 'authorizationStateWaitPassword' => 'AuthorizationState::WaitPassword',
28
+ 'authorizationStateReady' => 'AuthorizationState::Ready',
29
+ 'authorizationStateLoggingOut' => 'AuthorizationState::LoggingOut',
30
+ 'authorizationStateClosing' => 'AuthorizationState::Closing',
31
+ 'authorizationStateClosed' => 'AuthorizationState::Closed',
32
+ 'passwordState' => 'PasswordState',
33
+ 'recoveryEmailAddress' => 'RecoveryEmailAddress',
34
+ 'temporaryPasswordState' => 'TemporaryPasswordState',
35
+ 'localFile' => 'LocalFile',
36
+ 'remoteFile' => 'RemoteFile',
37
+ 'file' => 'File',
38
+ 'InputFile' => 'InputFile',
39
+ 'inputFileId' => 'InputFile::Id',
40
+ 'inputFileRemote' => 'InputFile::Remote',
41
+ 'inputFileLocal' => 'InputFile::Local',
42
+ 'inputFileGenerated' => 'InputFile::Generated',
43
+ 'photoSize' => 'PhotoSize',
44
+ 'MaskPoint' => 'MaskPoint',
45
+ 'maskPointForehead' => 'MaskPoint::Forehead',
46
+ 'maskPointEyes' => 'MaskPoint::Eyes',
47
+ 'maskPointMouth' => 'MaskPoint::Mouth',
48
+ 'maskPointChin' => 'MaskPoint::Chin',
49
+ 'maskPosition' => 'MaskPosition',
50
+ 'animation' => 'Animation',
51
+ 'audio' => 'Audio',
52
+ 'document' => 'Document',
53
+ 'photo' => 'Photo',
54
+ 'sticker' => 'Sticker',
55
+ 'video' => 'Video',
56
+ 'videoNote' => 'VideoNote',
57
+ 'voiceNote' => 'VoiceNote',
58
+ 'contact' => 'Contact',
59
+ 'location' => 'Location',
60
+ 'venue' => 'Venue',
61
+ 'game' => 'Game',
62
+ 'profilePhoto' => 'ProfilePhoto',
63
+ 'chatPhoto' => 'ChatPhoto',
64
+ 'LinkState' => 'LinkState',
65
+ 'linkStateNone' => 'LinkState::None',
66
+ 'linkStateKnowsPhoneNumber' => 'LinkState::KnowsPhoneNumber',
67
+ 'linkStateIsContact' => 'LinkState::IsContact',
68
+ 'UserType' => 'UserType',
69
+ 'userTypeRegular' => 'UserType::Regular',
70
+ 'userTypeDeleted' => 'UserType::Deleted',
71
+ 'userTypeBot' => 'UserType::Bot',
72
+ 'userTypeUnknown' => 'UserType::Unknown',
73
+ 'botCommand' => 'BotCommand',
74
+ 'botInfo' => 'BotInfo',
75
+ 'user' => 'User',
76
+ 'userFullInfo' => 'UserFullInfo',
77
+ 'userProfilePhotos' => 'UserProfilePhotos',
78
+ 'users' => 'Users',
79
+ 'ChatMemberStatus' => 'ChatMemberStatus',
80
+ 'chatMemberStatusCreator' => 'ChatMemberStatus::Creator',
81
+ 'chatMemberStatusAdministrator' => 'ChatMemberStatus::Administrator',
82
+ 'chatMemberStatusMember' => 'ChatMemberStatus::Member',
83
+ 'chatMemberStatusRestricted' => 'ChatMemberStatus::Restricted',
84
+ 'chatMemberStatusLeft' => 'ChatMemberStatus::Left',
85
+ 'chatMemberStatusBanned' => 'ChatMemberStatus::Banned',
86
+ 'chatMember' => 'ChatMember',
87
+ 'chatMembers' => 'ChatMembers',
88
+ 'ChatMembersFilter' => 'ChatMembersFilter',
89
+ 'chatMembersFilterAdministrators' => 'ChatMembersFilter::Administrators',
90
+ 'chatMembersFilterMembers' => 'ChatMembersFilter::Members',
91
+ 'chatMembersFilterRestricted' => 'ChatMembersFilter::Restricted',
92
+ 'chatMembersFilterBanned' => 'ChatMembersFilter::Banned',
93
+ 'chatMembersFilterBots' => 'ChatMembersFilter::Bots',
94
+ 'SupergroupMembersFilter' => 'SupergroupMembersFilter',
95
+ 'supergroupMembersFilterRecent' => 'SupergroupMembersFilter::Recent',
96
+ 'supergroupMembersFilterAdministrators' => 'SupergroupMembersFilter::Administrators',
97
+ 'supergroupMembersFilterSearch' => 'SupergroupMembersFilter::Search',
98
+ 'supergroupMembersFilterRestricted' => 'SupergroupMembersFilter::Restricted',
99
+ 'supergroupMembersFilterBanned' => 'SupergroupMembersFilter::Banned',
100
+ 'supergroupMembersFilterBots' => 'SupergroupMembersFilter::Bots',
101
+ 'basicGroup' => 'BasicGroup',
102
+ 'basicGroupFullInfo' => 'BasicGroupFullInfo',
103
+ 'supergroup' => 'Supergroup',
104
+ 'supergroupFullInfo' => 'SupergroupFullInfo',
105
+ 'SecretChatState' => 'SecretChatState',
106
+ 'secretChatStatePending' => 'SecretChatState::Pending',
107
+ 'secretChatStateReady' => 'SecretChatState::Ready',
108
+ 'secretChatStateClosed' => 'SecretChatState::Closed',
109
+ 'secretChat' => 'SecretChat',
110
+ 'MessageForwardInfo' => 'MessageForwardInfo',
111
+ 'messageForwardedFromUser' => 'MessageForwardInfo::MessageForwardedFromUser',
112
+ 'messageForwardedPost' => 'MessageForwardInfo::MessageForwardedPost',
113
+ 'MessageSendingState' => 'MessageSendingState',
114
+ 'messageSendingStatePending' => 'MessageSendingState::Pending',
115
+ 'messageSendingStateFailed' => 'MessageSendingState::Failed',
116
+ 'message' => 'Message',
117
+ 'messages' => 'Messages',
118
+ 'foundMessages' => 'FoundMessages',
119
+ 'NotificationSettingsScope' => 'NotificationSettingsScope',
120
+ 'notificationSettingsScopePrivateChats' => 'NotificationSettingsScope::PrivateChats',
121
+ 'notificationSettingsScopeGroupChats' => 'NotificationSettingsScope::GroupChats',
122
+ 'chatNotificationSettings' => 'ChatNotificationSettings',
123
+ 'scopeNotificationSettings' => 'ScopeNotificationSettings',
124
+ 'draftMessage' => 'DraftMessage',
125
+ 'ChatType' => 'ChatType',
126
+ 'chatTypePrivate' => 'ChatType::Private',
127
+ 'chatTypeBasicGroup' => 'ChatType::BasicGroup',
128
+ 'chatTypeSupergroup' => 'ChatType::Supergroup',
129
+ 'chatTypeSecret' => 'ChatType::Secret',
130
+ 'chat' => 'Chat',
131
+ 'chats' => 'Chats',
132
+ 'chatInviteLink' => 'ChatInviteLink',
133
+ 'chatInviteLinkInfo' => 'ChatInviteLinkInfo',
134
+ 'KeyboardButtonType' => 'KeyboardButtonType',
135
+ 'keyboardButtonTypeText' => 'KeyboardButtonType::Text',
136
+ 'keyboardButtonTypeRequestPhoneNumber' => 'KeyboardButtonType::RequestPhoneNumber',
137
+ 'keyboardButtonTypeRequestLocation' => 'KeyboardButtonType::RequestLocation',
138
+ 'keyboardButton' => 'KeyboardButton',
139
+ 'InlineKeyboardButtonType' => 'InlineKeyboardButtonType',
140
+ 'inlineKeyboardButtonTypeUrl' => 'InlineKeyboardButtonType::Url',
141
+ 'inlineKeyboardButtonTypeCallback' => 'InlineKeyboardButtonType::Callback',
142
+ 'inlineKeyboardButtonTypeCallbackGame' => 'InlineKeyboardButtonType::CallbackGame',
143
+ 'inlineKeyboardButtonTypeSwitchInline' => 'InlineKeyboardButtonType::SwitchInline',
144
+ 'inlineKeyboardButtonTypeBuy' => 'InlineKeyboardButtonType::Buy',
145
+ 'inlineKeyboardButton' => 'InlineKeyboardButton',
146
+ 'ReplyMarkup' => 'ReplyMarkup',
147
+ 'replyMarkupRemoveKeyboard' => 'ReplyMarkup::RemoveKeyboard',
148
+ 'replyMarkupForceReply' => 'ReplyMarkup::ForceReply',
149
+ 'replyMarkupShowKeyboard' => 'ReplyMarkup::ShowKeyboard',
150
+ 'replyMarkupInlineKeyboard' => 'ReplyMarkup::InlineKeyboard',
151
+ 'RichText' => 'RichText',
152
+ 'richTextPlain' => 'RichText::Plain',
153
+ 'richTextBold' => 'RichText::Bold',
154
+ 'richTextItalic' => 'RichText::Italic',
155
+ 'richTextUnderline' => 'RichText::Underline',
156
+ 'richTextStrikethrough' => 'RichText::Strikethrough',
157
+ 'richTextFixed' => 'RichText::Fixed',
158
+ 'richTextUrl' => 'RichText::Url',
159
+ 'richTextEmailAddress' => 'RichText::EmailAddress',
160
+ 'richTexts' => 'RichText::s',
161
+ 'PageBlock' => 'PageBlock',
162
+ 'pageBlockTitle' => 'PageBlock::Title',
163
+ 'pageBlockSubtitle' => 'PageBlock::Subtitle',
164
+ 'pageBlockAuthorDate' => 'PageBlock::AuthorDate',
165
+ 'pageBlockHeader' => 'PageBlock::Header',
166
+ 'pageBlockSubheader' => 'PageBlock::Subheader',
167
+ 'pageBlockParagraph' => 'PageBlock::Paragraph',
168
+ 'pageBlockPreformatted' => 'PageBlock::Preformatted',
169
+ 'pageBlockFooter' => 'PageBlock::Footer',
170
+ 'pageBlockDivider' => 'PageBlock::Divider',
171
+ 'pageBlockAnchor' => 'PageBlock::Anchor',
172
+ 'pageBlockList' => 'PageBlock::List',
173
+ 'pageBlockBlockQuote' => 'PageBlock::BlockQuote',
174
+ 'pageBlockPullQuote' => 'PageBlock::PullQuote',
175
+ 'pageBlockAnimation' => 'PageBlock::Animation',
176
+ 'pageBlockAudio' => 'PageBlock::Audio',
177
+ 'pageBlockPhoto' => 'PageBlock::Photo',
178
+ 'pageBlockVideo' => 'PageBlock::Video',
179
+ 'pageBlockCover' => 'PageBlock::Cover',
180
+ 'pageBlockEmbedded' => 'PageBlock::Embedded',
181
+ 'pageBlockEmbeddedPost' => 'PageBlock::EmbeddedPost',
182
+ 'pageBlockCollage' => 'PageBlock::Collage',
183
+ 'pageBlockSlideshow' => 'PageBlock::Slideshow',
184
+ 'pageBlockChatLink' => 'PageBlock::ChatLink',
185
+ 'webPageInstantView' => 'WebPageInstantView',
186
+ 'webPage' => 'WebPage',
187
+ 'address' => 'Address',
188
+ 'labeledPricePart' => 'LabeledPricePart',
189
+ 'invoice' => 'Invoice',
190
+ 'orderInfo' => 'OrderInfo',
191
+ 'shippingOption' => 'ShippingOption',
192
+ 'savedCredentials' => 'SavedCredentials',
193
+ 'InputCredentials' => 'InputCredentials',
194
+ 'inputCredentialsSaved' => 'InputCredentials::Saved',
195
+ 'inputCredentialsNew' => 'InputCredentials::New',
196
+ 'inputCredentialsAndroidPay' => 'InputCredentials::AndroidPay',
197
+ 'inputCredentialsApplePay' => 'InputCredentials::ApplePay',
198
+ 'paymentsProviderStripe' => 'PaymentsProviderStripe',
199
+ 'paymentForm' => 'PaymentForm',
200
+ 'validatedOrderInfo' => 'ValidatedOrderInfo',
201
+ 'paymentResult' => 'PaymentResult',
202
+ 'paymentReceipt' => 'PaymentReceipt',
203
+ 'datedFile' => 'DatedFile',
204
+ 'PassportElementType' => 'PassportElementType',
205
+ 'passportElementTypePersonalDetails' => 'PassportElementType::PersonalDetails',
206
+ 'passportElementTypePassport' => 'PassportElementType::Passport',
207
+ 'passportElementTypeDriverLicense' => 'PassportElementType::DriverLicense',
208
+ 'passportElementTypeIdentityCard' => 'PassportElementType::IdentityCard',
209
+ 'passportElementTypeInternalPassport' => 'PassportElementType::InternalPassport',
210
+ 'passportElementTypeAddress' => 'PassportElementType::Address',
211
+ 'passportElementTypeUtilityBill' => 'PassportElementType::UtilityBill',
212
+ 'passportElementTypeBankStatement' => 'PassportElementType::BankStatement',
213
+ 'passportElementTypeRentalAgreement' => 'PassportElementType::RentalAgreement',
214
+ 'passportElementTypePassportRegistration' => 'PassportElementType::PassportRegistration',
215
+ 'passportElementTypeTemporaryRegistration' => 'PassportElementType::TemporaryRegistration',
216
+ 'passportElementTypePhoneNumber' => 'PassportElementType::PhoneNumber',
217
+ 'passportElementTypeEmailAddress' => 'PassportElementType::EmailAddress',
218
+ 'date' => 'Date',
219
+ 'personalDetails' => 'PersonalDetails',
220
+ 'identityDocument' => 'IdentityDocument',
221
+ 'inputIdentityDocument' => 'InputIdentityDocument',
222
+ 'personalDocument' => 'PersonalDocument',
223
+ 'inputPersonalDocument' => 'InputPersonalDocument',
224
+ 'PassportElement' => 'PassportElement',
225
+ 'passportElementPersonalDetails' => 'PassportElement::PersonalDetails',
226
+ 'passportElementPassport' => 'PassportElement::Passport',
227
+ 'passportElementDriverLicense' => 'PassportElement::DriverLicense',
228
+ 'passportElementIdentityCard' => 'PassportElement::IdentityCard',
229
+ 'passportElementInternalPassport' => 'PassportElement::InternalPassport',
230
+ 'passportElementAddress' => 'PassportElement::Address',
231
+ 'passportElementUtilityBill' => 'PassportElement::UtilityBill',
232
+ 'passportElementBankStatement' => 'PassportElement::BankStatement',
233
+ 'passportElementRentalAgreement' => 'PassportElement::RentalAgreement',
234
+ 'passportElementPassportRegistration' => 'PassportElement::PassportRegistration',
235
+ 'passportElementTemporaryRegistration' => 'PassportElement::TemporaryRegistration',
236
+ 'passportElementPhoneNumber' => 'PassportElement::PhoneNumber',
237
+ 'passportElementEmailAddress' => 'PassportElement::EmailAddress',
238
+ 'InputPassportElement' => 'InputPassportElement',
239
+ 'inputPassportElementPersonalDetails' => 'InputPassportElement::PersonalDetails',
240
+ 'inputPassportElementPassport' => 'InputPassportElement::Passport',
241
+ 'inputPassportElementDriverLicense' => 'InputPassportElement::DriverLicense',
242
+ 'inputPassportElementIdentityCard' => 'InputPassportElement::IdentityCard',
243
+ 'inputPassportElementInternalPassport' => 'InputPassportElement::InternalPassport',
244
+ 'inputPassportElementAddress' => 'InputPassportElement::Address',
245
+ 'inputPassportElementUtilityBill' => 'InputPassportElement::UtilityBill',
246
+ 'inputPassportElementBankStatement' => 'InputPassportElement::BankStatement',
247
+ 'inputPassportElementRentalAgreement' => 'InputPassportElement::RentalAgreement',
248
+ 'inputPassportElementPassportRegistration' => 'InputPassportElement::PassportRegistration',
249
+ 'inputPassportElementTemporaryRegistration' => 'InputPassportElement::TemporaryRegistration',
250
+ 'inputPassportElementPhoneNumber' => 'InputPassportElement::PhoneNumber',
251
+ 'inputPassportElementEmailAddress' => 'InputPassportElement::EmailAddress',
252
+ 'passportElements' => 'PassportElements',
253
+ 'PassportElementErrorSource' => 'PassportElementErrorSource',
254
+ 'passportElementErrorSourceUnspecified' => 'PassportElementErrorSource::Unspecified',
255
+ 'passportElementErrorSourceDataField' => 'PassportElementErrorSource::DataField',
256
+ 'passportElementErrorSourceFrontSide' => 'PassportElementErrorSource::FrontSide',
257
+ 'passportElementErrorSourceReverseSide' => 'PassportElementErrorSource::ReverseSide',
258
+ 'passportElementErrorSourceSelfie' => 'PassportElementErrorSource::Selfie',
259
+ 'passportElementErrorSourceTranslationFile' => 'PassportElementErrorSource::TranslationFile',
260
+ 'passportElementErrorSourceTranslationFiles' => 'PassportElementErrorSource::TranslationFiles',
261
+ 'passportElementErrorSourceFile' => 'PassportElementErrorSource::File',
262
+ 'passportElementErrorSourceFiles' => 'PassportElementErrorSource::Files',
263
+ 'passportElementError' => 'PassportElementError',
264
+ 'passportSuitableElement' => 'PassportSuitableElement',
265
+ 'passportRequiredElement' => 'PassportRequiredElement',
266
+ 'passportAuthorizationForm' => 'PassportAuthorizationForm',
267
+ 'encryptedCredentials' => 'EncryptedCredentials',
268
+ 'encryptedPassportElement' => 'EncryptedPassportElement',
269
+ 'InputPassportElementErrorSource' => 'InputPassportElementErrorSource',
270
+ 'inputPassportElementErrorSourceUnspecified' => 'InputPassportElementErrorSource::Unspecified',
271
+ 'inputPassportElementErrorSourceDataField' => 'InputPassportElementErrorSource::DataField',
272
+ 'inputPassportElementErrorSourceFrontSide' => 'InputPassportElementErrorSource::FrontSide',
273
+ 'inputPassportElementErrorSourceReverseSide' => 'InputPassportElementErrorSource::ReverseSide',
274
+ 'inputPassportElementErrorSourceSelfie' => 'InputPassportElementErrorSource::Selfie',
275
+ 'inputPassportElementErrorSourceTranslationFile' => 'InputPassportElementErrorSource::TranslationFile',
276
+ 'inputPassportElementErrorSourceTranslationFiles' => 'InputPassportElementErrorSource::TranslationFiles',
277
+ 'inputPassportElementErrorSourceFile' => 'InputPassportElementErrorSource::File',
278
+ 'inputPassportElementErrorSourceFiles' => 'InputPassportElementErrorSource::Files',
279
+ 'inputPassportElementError' => 'InputPassportElementError',
280
+ 'MessageContent' => 'MessageContent',
281
+ 'messageText' => 'MessageContent::Text',
282
+ 'messageAnimation' => 'MessageContent::Animation',
283
+ 'messageAudio' => 'MessageContent::Audio',
284
+ 'messageDocument' => 'MessageContent::Document',
285
+ 'messagePhoto' => 'MessageContent::Photo',
286
+ 'messageExpiredPhoto' => 'MessageContent::ExpiredPhoto',
287
+ 'messageSticker' => 'MessageContent::Sticker',
288
+ 'messageVideo' => 'MessageContent::Video',
289
+ 'messageExpiredVideo' => 'MessageContent::ExpiredVideo',
290
+ 'messageVideoNote' => 'MessageContent::VideoNote',
291
+ 'messageVoiceNote' => 'MessageContent::VoiceNote',
292
+ 'messageLocation' => 'MessageContent::Location',
293
+ 'messageVenue' => 'MessageContent::Venue',
294
+ 'messageContact' => 'MessageContent::Contact',
295
+ 'messageGame' => 'MessageContent::Game',
296
+ 'messageInvoice' => 'MessageContent::Invoice',
297
+ 'messageCall' => 'MessageContent::Call',
298
+ 'messageBasicGroupChatCreate' => 'MessageContent::BasicGroupChatCreate',
299
+ 'messageSupergroupChatCreate' => 'MessageContent::SupergroupChatCreate',
300
+ 'messageChatChangeTitle' => 'MessageContent::ChatChangeTitle',
301
+ 'messageChatChangePhoto' => 'MessageContent::ChatChangePhoto',
302
+ 'messageChatDeletePhoto' => 'MessageContent::ChatDeletePhoto',
303
+ 'messageChatAddMembers' => 'MessageContent::ChatAddMembers',
304
+ 'messageChatJoinByLink' => 'MessageContent::ChatJoinByLink',
305
+ 'messageChatDeleteMember' => 'MessageContent::ChatDeleteMember',
306
+ 'messageChatUpgradeTo' => 'MessageContent::ChatUpgradeTo',
307
+ 'messageChatUpgradeFrom' => 'MessageContent::ChatUpgradeFrom',
308
+ 'messagePinMessage' => 'MessageContent::PinMessage',
309
+ 'messageScreenshotTaken' => 'MessageContent::ScreenshotTaken',
310
+ 'messageChatSetTtl' => 'MessageContent::ChatSetTtl',
311
+ 'messageCustomServiceAction' => 'MessageContent::CustomServiceAction',
312
+ 'messageGameScore' => 'MessageContent::GameScore',
313
+ 'messagePaymentSuccessful' => 'MessageContent::PaymentSuccessful',
314
+ 'messagePaymentSuccessfulBot' => 'MessageContent::PaymentSuccessfulBot',
315
+ 'messageContactRegistered' => 'MessageContent::ContactRegistered',
316
+ 'messageWebsiteConnected' => 'MessageContent::WebsiteConnected',
317
+ 'messagePassportDataSent' => 'MessageContent::PassportDataSent',
318
+ 'messagePassportDataReceived' => 'MessageContent::PassportDataReceived',
319
+ 'messageUnsupported' => 'MessageContent::Unsupported',
320
+ 'TextEntityType' => 'TextEntityType',
321
+ 'textEntityTypeMention' => 'TextEntityType::Mention',
322
+ 'textEntityTypeHashtag' => 'TextEntityType::Hashtag',
323
+ 'textEntityTypeCashtag' => 'TextEntityType::Cashtag',
324
+ 'textEntityTypeBotCommand' => 'TextEntityType::BotCommand',
325
+ 'textEntityTypeUrl' => 'TextEntityType::Url',
326
+ 'textEntityTypeEmailAddress' => 'TextEntityType::EmailAddress',
327
+ 'textEntityTypeBold' => 'TextEntityType::Bold',
328
+ 'textEntityTypeItalic' => 'TextEntityType::Italic',
329
+ 'textEntityTypeCode' => 'TextEntityType::Code',
330
+ 'textEntityTypePre' => 'TextEntityType::Pre',
331
+ 'textEntityTypePreCode' => 'TextEntityType::PreCode',
332
+ 'textEntityTypeTextUrl' => 'TextEntityType::TextUrl',
333
+ 'textEntityTypeMentionName' => 'TextEntityType::MentionName',
334
+ 'textEntityTypePhoneNumber' => 'TextEntityType::PhoneNumber',
335
+ 'inputThumbnail' => 'InputThumbnail',
336
+ 'InputMessageContent' => 'InputMessageContent',
337
+ 'inputMessageText' => 'InputMessageContent::Text',
338
+ 'inputMessageAnimation' => 'InputMessageContent::Animation',
339
+ 'inputMessageAudio' => 'InputMessageContent::Audio',
340
+ 'inputMessageDocument' => 'InputMessageContent::Document',
341
+ 'inputMessagePhoto' => 'InputMessageContent::Photo',
342
+ 'inputMessageSticker' => 'InputMessageContent::Sticker',
343
+ 'inputMessageVideo' => 'InputMessageContent::Video',
344
+ 'inputMessageVideoNote' => 'InputMessageContent::VideoNote',
345
+ 'inputMessageVoiceNote' => 'InputMessageContent::VoiceNote',
346
+ 'inputMessageLocation' => 'InputMessageContent::Location',
347
+ 'inputMessageVenue' => 'InputMessageContent::Venue',
348
+ 'inputMessageContact' => 'InputMessageContent::Contact',
349
+ 'inputMessageGame' => 'InputMessageContent::Game',
350
+ 'inputMessageInvoice' => 'InputMessageContent::Invoice',
351
+ 'inputMessageForwarded' => 'InputMessageContent::Forwarded',
352
+ 'SearchMessagesFilter' => 'SearchMessagesFilter',
353
+ 'searchMessagesFilterEmpty' => 'SearchMessagesFilter::Empty',
354
+ 'searchMessagesFilterAnimation' => 'SearchMessagesFilter::Animation',
355
+ 'searchMessagesFilterAudio' => 'SearchMessagesFilter::Audio',
356
+ 'searchMessagesFilterDocument' => 'SearchMessagesFilter::Document',
357
+ 'searchMessagesFilterPhoto' => 'SearchMessagesFilter::Photo',
358
+ 'searchMessagesFilterVideo' => 'SearchMessagesFilter::Video',
359
+ 'searchMessagesFilterVoiceNote' => 'SearchMessagesFilter::VoiceNote',
360
+ 'searchMessagesFilterPhotoAndVideo' => 'SearchMessagesFilter::PhotoAndVideo',
361
+ 'searchMessagesFilterUrl' => 'SearchMessagesFilter::Url',
362
+ 'searchMessagesFilterChatPhoto' => 'SearchMessagesFilter::ChatPhoto',
363
+ 'searchMessagesFilterCall' => 'SearchMessagesFilter::Call',
364
+ 'searchMessagesFilterMissedCall' => 'SearchMessagesFilter::MissedCall',
365
+ 'searchMessagesFilterVideoNote' => 'SearchMessagesFilter::VideoNote',
366
+ 'searchMessagesFilterVoiceAndVideoNote' => 'SearchMessagesFilter::VoiceAndVideoNote',
367
+ 'searchMessagesFilterMention' => 'SearchMessagesFilter::Mention',
368
+ 'searchMessagesFilterUnreadMention' => 'SearchMessagesFilter::UnreadMention',
369
+ 'ChatAction' => 'ChatAction',
370
+ 'chatActionTyping' => 'ChatAction::Typing',
371
+ 'chatActionRecordingVideo' => 'ChatAction::RecordingVideo',
372
+ 'chatActionUploadingVideo' => 'ChatAction::UploadingVideo',
373
+ 'chatActionRecordingVoiceNote' => 'ChatAction::RecordingVoiceNote',
374
+ 'chatActionUploadingVoiceNote' => 'ChatAction::UploadingVoiceNote',
375
+ 'chatActionUploadingPhoto' => 'ChatAction::UploadingPhoto',
376
+ 'chatActionUploadingDocument' => 'ChatAction::UploadingDocument',
377
+ 'chatActionChoosingLocation' => 'ChatAction::ChoosingLocation',
378
+ 'chatActionChoosingContact' => 'ChatAction::ChoosingContact',
379
+ 'chatActionStartPlayingGame' => 'ChatAction::StartPlayingGame',
380
+ 'chatActionRecordingVideoNote' => 'ChatAction::RecordingVideoNote',
381
+ 'chatActionUploadingVideoNote' => 'ChatAction::UploadingVideoNote',
382
+ 'chatActionCancel' => 'ChatAction::Cancel',
383
+ 'UserStatus' => 'UserStatus',
384
+ 'userStatusEmpty' => 'UserStatus::Empty',
385
+ 'userStatusOnline' => 'UserStatus::Online',
386
+ 'userStatusOffline' => 'UserStatus::Offline',
387
+ 'userStatusRecently' => 'UserStatus::Recently',
388
+ 'userStatusLastWeek' => 'UserStatus::LastWeek',
389
+ 'userStatusLastMonth' => 'UserStatus::LastMonth',
390
+ 'stickers' => 'Stickers',
391
+ 'stickerEmojis' => 'StickerEmojis',
392
+ 'stickerSet' => 'StickerSet',
393
+ 'stickerSetInfo' => 'StickerSetInfo',
394
+ 'stickerSets' => 'StickerSets',
395
+ 'CallDiscardReason' => 'CallDiscardReason',
396
+ 'callDiscardReasonEmpty' => 'CallDiscardReason::Empty',
397
+ 'callDiscardReasonMissed' => 'CallDiscardReason::Missed',
398
+ 'callDiscardReasonDeclined' => 'CallDiscardReason::Declined',
399
+ 'callDiscardReasonDisconnected' => 'CallDiscardReason::Disconnected',
400
+ 'callDiscardReasonHungUp' => 'CallDiscardReason::HungUp',
401
+ 'callProtocol' => 'CallProtocol',
402
+ 'callConnection' => 'CallConnection',
403
+ 'callId' => 'CallId',
404
+ 'CallState' => 'CallState',
405
+ 'callStatePending' => 'CallState::Pending',
406
+ 'callStateExchangingKeys' => 'CallState::ExchangingKeys',
407
+ 'callStateReady' => 'CallState::Ready',
408
+ 'callStateHangingUp' => 'CallState::HangingUp',
409
+ 'callStateDiscarded' => 'CallState::Discarded',
410
+ 'callStateError' => 'CallState::Error',
411
+ 'call' => 'Call',
412
+ 'animations' => 'Animations',
413
+ 'importedContacts' => 'ImportedContacts',
414
+ 'InputInlineQueryResult' => 'InputInlineQueryResult',
415
+ 'inputInlineQueryResultAnimatedGif' => 'InputInlineQueryResult::AnimatedGif',
416
+ 'inputInlineQueryResultAnimatedMpeg4' => 'InputInlineQueryResult::AnimatedMpeg4',
417
+ 'inputInlineQueryResultArticle' => 'InputInlineQueryResult::Article',
418
+ 'inputInlineQueryResultAudio' => 'InputInlineQueryResult::Audio',
419
+ 'inputInlineQueryResultContact' => 'InputInlineQueryResult::Contact',
420
+ 'inputInlineQueryResultDocument' => 'InputInlineQueryResult::Document',
421
+ 'inputInlineQueryResultGame' => 'InputInlineQueryResult::Game',
422
+ 'inputInlineQueryResultLocation' => 'InputInlineQueryResult::Location',
423
+ 'inputInlineQueryResultPhoto' => 'InputInlineQueryResult::Photo',
424
+ 'inputInlineQueryResultSticker' => 'InputInlineQueryResult::Sticker',
425
+ 'inputInlineQueryResultVenue' => 'InputInlineQueryResult::Venue',
426
+ 'inputInlineQueryResultVideo' => 'InputInlineQueryResult::Video',
427
+ 'inputInlineQueryResultVoiceNote' => 'InputInlineQueryResult::VoiceNote',
428
+ 'InlineQueryResult' => 'InlineQueryResult',
429
+ 'inlineQueryResultArticle' => 'InlineQueryResult::Article',
430
+ 'inlineQueryResultContact' => 'InlineQueryResult::Contact',
431
+ 'inlineQueryResultLocation' => 'InlineQueryResult::Location',
432
+ 'inlineQueryResultVenue' => 'InlineQueryResult::Venue',
433
+ 'inlineQueryResultGame' => 'InlineQueryResult::Game',
434
+ 'inlineQueryResultAnimation' => 'InlineQueryResult::Animation',
435
+ 'inlineQueryResultAudio' => 'InlineQueryResult::Audio',
436
+ 'inlineQueryResultDocument' => 'InlineQueryResult::Document',
437
+ 'inlineQueryResultPhoto' => 'InlineQueryResult::Photo',
438
+ 'inlineQueryResultSticker' => 'InlineQueryResult::Sticker',
439
+ 'inlineQueryResultVideo' => 'InlineQueryResult::Video',
440
+ 'inlineQueryResultVoiceNote' => 'InlineQueryResult::VoiceNote',
441
+ 'inlineQueryResults' => 'InlineQueryResults',
442
+ 'CallbackQueryPayload' => 'CallbackQueryPayload',
443
+ 'callbackQueryPayloadData' => 'CallbackQueryPayload::Data',
444
+ 'callbackQueryPayloadGame' => 'CallbackQueryPayload::Game',
445
+ 'callbackQueryAnswer' => 'CallbackQueryAnswer',
446
+ 'customRequestResult' => 'CustomRequestResult',
447
+ 'gameHighScore' => 'GameHighScore',
448
+ 'gameHighScores' => 'GameHighScores',
449
+ 'ChatEventAction' => 'ChatEventAction',
450
+ 'chatEventMessageEdited' => 'ChatEventAction::MessageEdited',
451
+ 'chatEventMessageDeleted' => 'ChatEventAction::MessageDeleted',
452
+ 'chatEventMessagePinned' => 'ChatEventAction::MessagePinned',
453
+ 'chatEventMessageUnpinned' => 'ChatEventAction::MessageUnpinned',
454
+ 'chatEventMemberJoined' => 'ChatEventAction::MemberJoined',
455
+ 'chatEventMemberLeft' => 'ChatEventAction::MemberLeft',
456
+ 'chatEventMemberInvited' => 'ChatEventAction::MemberInvited',
457
+ 'chatEventMemberPromoted' => 'ChatEventAction::MemberPromoted',
458
+ 'chatEventMemberRestricted' => 'ChatEventAction::MemberRestricted',
459
+ 'chatEventTitleChanged' => 'ChatEventAction::TitleChanged',
460
+ 'chatEventDescriptionChanged' => 'ChatEventAction::DescriptionChanged',
461
+ 'chatEventUsernameChanged' => 'ChatEventAction::UsernameChanged',
462
+ 'chatEventPhotoChanged' => 'ChatEventAction::PhotoChanged',
463
+ 'chatEventInvitesToggled' => 'ChatEventAction::InvitesToggled',
464
+ 'chatEventSignMessagesToggled' => 'ChatEventAction::SignMessagesToggled',
465
+ 'chatEventStickerSetChanged' => 'ChatEventAction::StickerSetChanged',
466
+ 'chatEventIsAllHistoryAvailableToggled' => 'ChatEventAction::IsAllHistoryAvailableToggled',
467
+ 'chatEvent' => 'ChatEvent',
468
+ 'chatEvents' => 'ChatEvents',
469
+ 'chatEventLogFilters' => 'ChatEventLogFilters',
470
+ 'LanguagePackStringValue' => 'LanguagePackStringValue',
471
+ 'languagePackStringValueOrdinary' => 'LanguagePackStringValue::Ordinary',
472
+ 'languagePackStringValuePluralized' => 'LanguagePackStringValue::Pluralized',
473
+ 'languagePackStringValueDeleted' => 'LanguagePackStringValue::Deleted',
474
+ 'languagePackString' => 'LanguagePackString',
475
+ 'languagePackStrings' => 'LanguagePackStrings',
476
+ 'languagePackInfo' => 'LanguagePackInfo',
477
+ 'localizationTargetInfo' => 'LocalizationTargetInfo',
478
+ 'DeviceToken' => 'DeviceToken',
479
+ 'deviceTokenGoogleCloudMessaging' => 'DeviceToken::GoogleCloudMessaging',
480
+ 'deviceTokenApplePush' => 'DeviceToken::ApplePush',
481
+ 'deviceTokenApplePushVoIP' => 'DeviceToken::ApplePushVoIP',
482
+ 'deviceTokenWindowsPush' => 'DeviceToken::WindowsPush',
483
+ 'deviceTokenMicrosoftPush' => 'DeviceToken::MicrosoftPush',
484
+ 'deviceTokenMicrosoftPushVoIP' => 'DeviceToken::MicrosoftPushVoIP',
485
+ 'deviceTokenWebPush' => 'DeviceToken::WebPush',
486
+ 'deviceTokenSimplePush' => 'DeviceToken::SimplePush',
487
+ 'deviceTokenUbuntuPush' => 'DeviceToken::UbuntuPush',
488
+ 'deviceTokenBlackBerryPush' => 'DeviceToken::BlackBerryPush',
489
+ 'deviceTokenTizenPush' => 'DeviceToken::TizenPush',
490
+ 'wallpaper' => 'Wallpaper',
491
+ 'wallpapers' => 'Wallpapers',
492
+ 'hashtags' => 'Hashtags',
493
+ 'CheckChatUsernameResult' => 'CheckChatUsernameResult',
494
+ 'checkChatUsernameResultOk' => 'CheckChatUsernameResult::Ok',
495
+ 'checkChatUsernameResultUsernameInvalid' => 'CheckChatUsernameResult::UsernameInvalid',
496
+ 'checkChatUsernameResultUsernameOccupied' => 'CheckChatUsernameResult::UsernameOccupied',
497
+ 'checkChatUsernameResultPublicChatsTooMuch' => 'CheckChatUsernameResult::PublicChatsTooMuch',
498
+ 'checkChatUsernameResultPublicGroupsUnavailable' => 'CheckChatUsernameResult::PublicGroupsUnavailable',
499
+ 'OptionValue' => 'OptionValue',
500
+ 'optionValueBoolean' => 'OptionValue::Boolean',
501
+ 'optionValueEmpty' => 'OptionValue::Empty',
502
+ 'optionValueInteger' => 'OptionValue::Integer',
503
+ 'optionValueString' => 'OptionValue::String',
504
+ 'UserPrivacySettingRule' => 'UserPrivacySettingRule',
505
+ 'userPrivacySettingRuleAllowAll' => 'UserPrivacySettingRule::AllowAll',
506
+ 'userPrivacySettingRuleAllowContacts' => 'UserPrivacySettingRule::AllowContacts',
507
+ 'userPrivacySettingRuleAllowUsers' => 'UserPrivacySettingRule::AllowUsers',
508
+ 'userPrivacySettingRuleRestrictAll' => 'UserPrivacySettingRule::RestrictAll',
509
+ 'userPrivacySettingRuleRestrictContacts' => 'UserPrivacySettingRule::RestrictContacts',
510
+ 'userPrivacySettingRuleRestrictUsers' => 'UserPrivacySettingRule::RestrictUsers',
511
+ 'userPrivacySettingRules' => 'UserPrivacySettingRules',
512
+ 'UserPrivacySetting' => 'UserPrivacySetting',
513
+ 'userPrivacySettingShowStatus' => 'UserPrivacySetting::ShowStatus',
514
+ 'userPrivacySettingAllowChatInvites' => 'UserPrivacySetting::AllowChatInvites',
515
+ 'userPrivacySettingAllowCalls' => 'UserPrivacySetting::AllowCalls',
516
+ 'accountTtl' => 'AccountTtl',
517
+ 'session' => 'Session',
518
+ 'sessions' => 'Sessions',
519
+ 'connectedWebsite' => 'ConnectedWebsite',
520
+ 'connectedWebsites' => 'ConnectedWebsites',
521
+ 'chatReportSpamState' => 'ChatReportSpamState',
522
+ 'ChatReportReason' => 'ChatReportReason',
523
+ 'chatReportReasonSpam' => 'ChatReportReason::Spam',
524
+ 'chatReportReasonViolence' => 'ChatReportReason::Violence',
525
+ 'chatReportReasonPornography' => 'ChatReportReason::Pornography',
526
+ 'chatReportReasonCopyright' => 'ChatReportReason::Copyright',
527
+ 'chatReportReasonCustom' => 'ChatReportReason::Custom',
528
+ 'publicMessageLink' => 'PublicMessageLink',
529
+ 'FileType' => 'FileType',
530
+ 'fileTypeNone' => 'FileType::None',
531
+ 'fileTypeAnimation' => 'FileType::Animation',
532
+ 'fileTypeAudio' => 'FileType::Audio',
533
+ 'fileTypeDocument' => 'FileType::Document',
534
+ 'fileTypePhoto' => 'FileType::Photo',
535
+ 'fileTypeProfilePhoto' => 'FileType::ProfilePhoto',
536
+ 'fileTypeSecret' => 'FileType::Secret',
537
+ 'fileTypeSecretThumbnail' => 'FileType::SecretThumbnail',
538
+ 'fileTypeSecure' => 'FileType::Secure',
539
+ 'fileTypeSticker' => 'FileType::Sticker',
540
+ 'fileTypeThumbnail' => 'FileType::Thumbnail',
541
+ 'fileTypeUnknown' => 'FileType::Unknown',
542
+ 'fileTypeVideo' => 'FileType::Video',
543
+ 'fileTypeVideoNote' => 'FileType::VideoNote',
544
+ 'fileTypeVoiceNote' => 'FileType::VoiceNote',
545
+ 'fileTypeWallpaper' => 'FileType::Wallpaper',
546
+ 'storageStatisticsByFileType' => 'StorageStatisticsByFileType',
547
+ 'storageStatisticsByChat' => 'StorageStatisticsByChat',
548
+ 'storageStatistics' => 'StorageStatistics',
549
+ 'storageStatisticsFast' => 'StorageStatisticsFast',
550
+ 'NetworkType' => 'NetworkType',
551
+ 'networkTypeNone' => 'NetworkType::None',
552
+ 'networkTypeMobile' => 'NetworkType::Mobile',
553
+ 'networkTypeMobileRoaming' => 'NetworkType::MobileRoaming',
554
+ 'networkTypeWiFi' => 'NetworkType::WiFi',
555
+ 'networkTypeOther' => 'NetworkType::Other',
556
+ 'NetworkStatisticsEntry' => 'NetworkStatisticsEntry',
557
+ 'networkStatisticsEntryFile' => 'NetworkStatisticsEntry::File',
558
+ 'networkStatisticsEntryCall' => 'NetworkStatisticsEntry::Call',
559
+ 'networkStatistics' => 'NetworkStatistics',
560
+ 'ConnectionState' => 'ConnectionState',
561
+ 'connectionStateWaitingForNetwork' => 'ConnectionState::WaitingForNetwork',
562
+ 'connectionStateConnectingToProxy' => 'ConnectionState::ConnectingToProxy',
563
+ 'connectionStateConnecting' => 'ConnectionState::Connecting',
564
+ 'connectionStateUpdating' => 'ConnectionState::Updating',
565
+ 'connectionStateReady' => 'ConnectionState::Ready',
566
+ 'TopChatCategory' => 'TopChatCategory',
567
+ 'topChatCategoryUsers' => 'TopChatCategory::Users',
568
+ 'topChatCategoryBots' => 'TopChatCategory::Bots',
569
+ 'topChatCategoryGroups' => 'TopChatCategory::Groups',
570
+ 'topChatCategoryChannels' => 'TopChatCategory::Channels',
571
+ 'topChatCategoryInlineBots' => 'TopChatCategory::InlineBots',
572
+ 'topChatCategoryCalls' => 'TopChatCategory::Calls',
573
+ 'TMeUrlType' => 'TMeUrlType',
574
+ 'tMeUrlTypeUser' => 'TMeUrlType::User',
575
+ 'tMeUrlTypeSupergroup' => 'TMeUrlType::Supergroup',
576
+ 'tMeUrlTypeChatInvite' => 'TMeUrlType::ChatInvite',
577
+ 'tMeUrlTypeStickerSet' => 'TMeUrlType::StickerSet',
578
+ 'tMeUrl' => 'TMeUrl',
579
+ 'tMeUrls' => 'TMeUrls',
580
+ 'count' => 'Count',
581
+ 'text' => 'Text',
582
+ 'seconds' => 'Seconds',
583
+ 'deepLinkInfo' => 'DeepLinkInfo',
584
+ 'TextParseMode' => 'TextParseMode',
585
+ 'textParseModeMarkdown' => 'TextParseMode::Markdown',
586
+ 'textParseModeHTML' => 'TextParseMode::HTML',
587
+ 'ProxyType' => 'ProxyType',
588
+ 'proxyTypeSocks5' => 'ProxyType::Socks5',
589
+ 'proxyTypeHttp' => 'ProxyType::Http',
590
+ 'proxyTypeMtproto' => 'ProxyType::Mtproto',
591
+ 'proxy' => 'Proxy',
592
+ 'proxies' => 'Proxies',
593
+ 'inputSticker' => 'InputSticker',
594
+ 'Update' => 'Update',
595
+ 'updateAuthorizationState' => 'Update::AuthorizationState',
596
+ 'updateNewMessage' => 'Update::NewMessage',
597
+ 'updateMessageSendAcknowledged' => 'Update::MessageSendAcknowledged',
598
+ 'updateMessageSendSucceeded' => 'Update::MessageSendSucceeded',
599
+ 'updateMessageSendFailed' => 'Update::MessageSendFailed',
600
+ 'updateMessageContent' => 'Update::MessageContent',
601
+ 'updateMessageEdited' => 'Update::MessageEdited',
602
+ 'updateMessageViews' => 'Update::MessageViews',
603
+ 'updateMessageContentOpened' => 'Update::MessageContentOpened',
604
+ 'updateMessageMentionRead' => 'Update::MessageMentionRead',
605
+ 'updateNewChat' => 'Update::NewChat',
606
+ 'updateChatTitle' => 'Update::ChatTitle',
607
+ 'updateChatPhoto' => 'Update::ChatPhoto',
608
+ 'updateChatLastMessage' => 'Update::ChatLastMessage',
609
+ 'updateChatOrder' => 'Update::ChatOrder',
610
+ 'updateChatIsPinned' => 'Update::ChatIsPinned',
611
+ 'updateChatIsMarkedAsUnread' => 'Update::ChatIsMarkedAsUnread',
612
+ 'updateChatIsSponsored' => 'Update::ChatIsSponsored',
613
+ 'updateChatDefaultDisableNotification' => 'Update::ChatDefaultDisableNotification',
614
+ 'updateChatReadInbox' => 'Update::ChatReadInbox',
615
+ 'updateChatReadOutbox' => 'Update::ChatReadOutbox',
616
+ 'updateChatUnreadMentionCount' => 'Update::ChatUnreadMentionCount',
617
+ 'updateChatNotificationSettings' => 'Update::ChatNotificationSettings',
618
+ 'updateScopeNotificationSettings' => 'Update::ScopeNotificationSettings',
619
+ 'updateChatReplyMarkup' => 'Update::ChatReplyMarkup',
620
+ 'updateChatDraftMessage' => 'Update::ChatDraftMessage',
621
+ 'updateDeleteMessages' => 'Update::DeleteMessages',
622
+ 'updateUserChatAction' => 'Update::UserChatAction',
623
+ 'updateUserStatus' => 'Update::UserStatus',
624
+ 'updateUser' => 'Update::User',
625
+ 'updateBasicGroup' => 'Update::BasicGroup',
626
+ 'updateSupergroup' => 'Update::Supergroup',
627
+ 'updateSecretChat' => 'Update::SecretChat',
628
+ 'updateUserFullInfo' => 'Update::UserFullInfo',
629
+ 'updateBasicGroupFullInfo' => 'Update::BasicGroupFullInfo',
630
+ 'updateSupergroupFullInfo' => 'Update::SupergroupFullInfo',
631
+ 'updateServiceNotification' => 'Update::ServiceNotification',
632
+ 'updateFile' => 'Update::File',
633
+ 'updateFileGenerationStart' => 'Update::FileGenerationStart',
634
+ 'updateFileGenerationStop' => 'Update::FileGenerationStop',
635
+ 'updateCall' => 'Update::Call',
636
+ 'updateUserPrivacySettingRules' => 'Update::UserPrivacySettingRules',
637
+ 'updateUnreadMessageCount' => 'Update::UnreadMessageCount',
638
+ 'updateUnreadChatCount' => 'Update::UnreadChatCount',
639
+ 'updateOption' => 'Update::Option',
640
+ 'updateInstalledStickerSets' => 'Update::InstalledStickerSets',
641
+ 'updateTrendingStickerSets' => 'Update::TrendingStickerSets',
642
+ 'updateRecentStickers' => 'Update::RecentStickers',
643
+ 'updateFavoriteStickers' => 'Update::FavoriteStickers',
644
+ 'updateSavedAnimations' => 'Update::SavedAnimations',
645
+ 'updateLanguagePackStrings' => 'Update::LanguagePackStrings',
646
+ 'updateConnectionState' => 'Update::ConnectionState',
647
+ 'updateTermsOfService' => 'Update::TermsOfService',
648
+ 'updateNewInlineQuery' => 'Update::NewInlineQuery',
649
+ 'updateNewChosenInlineResult' => 'Update::NewChosenInlineResult',
650
+ 'updateNewCallbackQuery' => 'Update::NewCallbackQuery',
651
+ 'updateNewInlineCallbackQuery' => 'Update::NewInlineCallbackQuery',
652
+ 'updateNewShippingQuery' => 'Update::NewShippingQuery',
653
+ 'updateNewPreCheckoutQuery' => 'Update::NewPreCheckoutQuery',
654
+ 'updateNewCustomEvent' => 'Update::NewCustomEvent',
655
+ 'updateNewCustomQuery' => 'Update::NewCustomQuery'
656
+ }.freeze
657
+
658
+ module_function
659
+
660
+ # Recursively wraps a hash into typed classes
661
+ def wrap(object)
662
+ # Wrapping each entry in array
663
+ if object.kind_of?(::Array)
664
+ object.map { |o| wrap(o) }
665
+ elsif object.kind_of?(::Hash)
666
+ type = object.delete('@type')
667
+
668
+ object.each do |key, val|
669
+ if val.respond_to?(:each)
670
+ object[key] = wrap(val)
671
+ end
672
+ end
673
+
674
+ unless type
675
+ return object
676
+ end
677
+
678
+ if (klass = LOOKUP_TABLE[type])
679
+ const_get(klass).new(object)
680
+ else
681
+ raise ArgumentError.new("Can't find class for #{type}")
682
+ end
683
+ else
684
+ object
685
+ end
686
+ end
687
+
688
+ # Simple implementation for internal use only.
689
+ def camelize(str)
690
+ str.gsub(/(?:_|(\/)|^)([a-z\d]*)/i) { "#{$1}#{$2.capitalize}" }
691
+ end
692
+
693
+ %w[
694
+ account_ttl
695
+ address
696
+ animation
697
+ animations
698
+ audio
699
+ authentication_code_info
700
+ authentication_code_type
701
+ authorization_state
702
+ base
703
+ basic_group
704
+ basic_group_full_info
705
+ bot_command
706
+ bot_info
707
+ call
708
+ call_connection
709
+ call_discard_reason
710
+ call_id
711
+ call_protocol
712
+ call_state
713
+ callback_query_answer
714
+ callback_query_payload
715
+ chat
716
+ chat_action
717
+ chat_event
718
+ chat_event_action
719
+ chat_event_log_filters
720
+ chat_events
721
+ chat_invite_link
722
+ chat_invite_link_info
723
+ chat_member
724
+ chat_member_status
725
+ chat_members
726
+ chat_members_filter
727
+ chat_notification_settings
728
+ chat_photo
729
+ chat_report_reason
730
+ chat_report_spam_state
731
+ chat_type
732
+ chats
733
+ check_chat_username_result
734
+ connected_website
735
+ connected_websites
736
+ connection_state
737
+ contact
738
+ count
739
+ custom_request_result
740
+ date
741
+ dated_file
742
+ deep_link_info
743
+ device_token
744
+ document
745
+ draft_message
746
+ email_address_authentication_code_info
747
+ encrypted_credentials
748
+ encrypted_passport_element
749
+ error
750
+ file
751
+ file_type
752
+ formatted_text
753
+ found_messages
754
+ game
755
+ game_high_score
756
+ game_high_scores
757
+ hashtags
758
+ identity_document
759
+ imported_contacts
760
+ inline_keyboard_button
761
+ inline_keyboard_button_type
762
+ inline_query_result
763
+ inline_query_results
764
+ input_credentials
765
+ input_file
766
+ input_identity_document
767
+ input_inline_query_result
768
+ input_message_content
769
+ input_passport_element
770
+ input_passport_element_error
771
+ input_passport_element_error_source
772
+ input_personal_document
773
+ input_sticker
774
+ input_thumbnail
775
+ invoice
776
+ keyboard_button
777
+ keyboard_button_type
778
+ labeled_price_part
779
+ language_pack_info
780
+ language_pack_string
781
+ language_pack_string_value
782
+ language_pack_strings
783
+ link_state
784
+ local_file
785
+ localization_target_info
786
+ location
787
+ mask_point
788
+ mask_position
789
+ message
790
+ message_content
791
+ message_forward_info
792
+ message_sending_state
793
+ messages
794
+ network_statistics
795
+ network_statistics_entry
796
+ network_type
797
+ notification_settings_scope
798
+ ok
799
+ option_value
800
+ order_info
801
+ page_block
802
+ passport_authorization_form
803
+ passport_element
804
+ passport_element_error
805
+ passport_element_error_source
806
+ passport_element_type
807
+ passport_elements
808
+ passport_required_element
809
+ passport_suitable_element
810
+ password_state
811
+ payment_form
812
+ payment_receipt
813
+ payment_result
814
+ payments_provider_stripe
815
+ personal_details
816
+ personal_document
817
+ photo
818
+ photo_size
819
+ profile_photo
820
+ proxies
821
+ proxy
822
+ proxy_type
823
+ public_message_link
824
+ recovery_email_address
825
+ remote_file
826
+ reply_markup
827
+ rich_text
828
+ saved_credentials
829
+ scope_notification_settings
830
+ search_messages_filter
831
+ seconds
832
+ secret_chat
833
+ secret_chat_state
834
+ session
835
+ sessions
836
+ shipping_option
837
+ sticker
838
+ sticker_emojis
839
+ sticker_set
840
+ sticker_set_info
841
+ sticker_sets
842
+ stickers
843
+ storage_statistics
844
+ storage_statistics_by_chat
845
+ storage_statistics_by_file_type
846
+ storage_statistics_fast
847
+ supergroup
848
+ supergroup_full_info
849
+ supergroup_members_filter
850
+ t_me_url
851
+ t_me_url_type
852
+ t_me_urls
853
+ tdlib_parameters
854
+ temporary_password_state
855
+ terms_of_service
856
+ text
857
+ text_entities
858
+ text_entity
859
+ text_entity_type
860
+ text_parse_mode
861
+ top_chat_category
862
+ update
863
+ user
864
+ user_full_info
865
+ user_privacy_setting
866
+ user_privacy_setting_rule
867
+ user_privacy_setting_rules
868
+ user_profile_photos
869
+ user_status
870
+ user_type
871
+ users
872
+ validated_order_info
873
+ venue
874
+ video
875
+ video_note
876
+ voice_note
877
+ wallpaper
878
+ wallpapers
879
+ web_page
880
+ web_page_instant_view
881
+ ].each do |type|
882
+ autoload camelize(type), "tdlib/types/#{type}"
883
+ end
884
+ end