x-twitter-scraper 0.4.2 → 0.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (522) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +23 -0
  3. data/LICENSE +201 -0
  4. data/README.md +10 -12
  5. data/lib/x_twitter_scraper/client.rb +30 -26
  6. data/lib/x_twitter_scraper/internal/transport/base_client.rb +5 -0
  7. data/lib/x_twitter_scraper/internal/type/base_model.rb +4 -3
  8. data/lib/x_twitter_scraper/internal/util.rb +3 -1
  9. data/lib/x_twitter_scraper/models/account_retrieve_response.rb +138 -23
  10. data/lib/x_twitter_scraper/models/content_disclosure.rb +66 -0
  11. data/lib/x_twitter_scraper/models/credit_redirect_topup_checkout_params.rb +22 -0
  12. data/lib/x_twitter_scraper/models/credit_retrieve_balance_response.rb +37 -10
  13. data/lib/x_twitter_scraper/models/credit_retrieve_topup_status_params.rb +22 -0
  14. data/lib/x_twitter_scraper/models/credit_retrieve_topup_status_response.rb +45 -0
  15. data/lib/x_twitter_scraper/models/credit_topup_balance_params.rb +13 -5
  16. data/lib/x_twitter_scraper/models/credit_topup_balance_response.rb +18 -5
  17. data/lib/x_twitter_scraper/models/draft_list_params.rb +8 -2
  18. data/lib/x_twitter_scraper/models/draw_detail.rb +15 -1
  19. data/lib/x_twitter_scraper/models/draw_export_params.rb +3 -3
  20. data/lib/x_twitter_scraper/models/draw_list_item.rb +8 -1
  21. data/lib/x_twitter_scraper/models/draw_list_params.rb +13 -7
  22. data/lib/x_twitter_scraper/models/draw_run_response.rb +13 -2
  23. data/lib/x_twitter_scraper/models/embedded_tweet.rb +202 -0
  24. data/lib/x_twitter_scraper/models/error.rb +203 -34
  25. data/lib/x_twitter_scraper/models/event.rb +48 -6
  26. data/lib/x_twitter_scraper/models/event_detail.rb +46 -7
  27. data/lib/x_twitter_scraper/models/event_list_params.rb +13 -7
  28. data/lib/x_twitter_scraper/models/event_type.rb +17 -2
  29. data/lib/x_twitter_scraper/models/extraction_estimate_cost_params.rb +308 -7
  30. data/lib/x_twitter_scraper/models/extraction_estimate_cost_response.rb +38 -14
  31. data/lib/x_twitter_scraper/models/extraction_export_results_params.rb +3 -3
  32. data/lib/x_twitter_scraper/models/extraction_job.rb +3 -0
  33. data/lib/x_twitter_scraper/models/extraction_list_params.rb +16 -7
  34. data/lib/x_twitter_scraper/models/extraction_retrieve_params.rb +5 -5
  35. data/lib/x_twitter_scraper/models/extraction_retrieve_response.rb +2 -2
  36. data/lib/x_twitter_scraper/models/extraction_run_params.rb +304 -7
  37. data/lib/x_twitter_scraper/models/extraction_run_response.rb +3 -0
  38. data/lib/x_twitter_scraper/models/guest_wallet_amount.rb +25 -0
  39. data/lib/x_twitter_scraper/models/guest_wallet_create_params.rb +36 -0
  40. data/lib/x_twitter_scraper/models/guest_wallet_create_response.rb +161 -0
  41. data/lib/x_twitter_scraper/models/{integration_list_params.rb → guest_wallet_retrieve_status_params.rb} +2 -2
  42. data/lib/x_twitter_scraper/models/guest_wallet_retrieve_status_response.rb +196 -0
  43. data/lib/x_twitter_scraper/models/guest_wallet_topup_params.rb +36 -0
  44. data/lib/x_twitter_scraper/models/guest_wallet_topup_response.rb +172 -0
  45. data/lib/x_twitter_scraper/models/monitor.rb +9 -1
  46. data/lib/x_twitter_scraper/models/monitor_create_response.rb +16 -1
  47. data/lib/x_twitter_scraper/models/monitors/keyword_create_params.rb +34 -0
  48. data/lib/x_twitter_scraper/models/monitors/keyword_create_response.rb +59 -0
  49. data/lib/x_twitter_scraper/models/monitors/keyword_deactivate_params.rb +22 -0
  50. data/lib/x_twitter_scraper/models/monitors/keyword_deactivate_response.rb +18 -0
  51. data/lib/x_twitter_scraper/models/monitors/keyword_list_params.rb +16 -0
  52. data/lib/x_twitter_scraper/models/monitors/keyword_list_response.rb +76 -0
  53. data/lib/x_twitter_scraper/models/monitors/keyword_retrieve_params.rb +22 -0
  54. data/lib/x_twitter_scraper/models/monitors/keyword_retrieve_response.rb +59 -0
  55. data/lib/x_twitter_scraper/models/monitors/keyword_update_params.rb +40 -0
  56. data/lib/x_twitter_scraper/models/monitors/keyword_update_response.rb +59 -0
  57. data/lib/x_twitter_scraper/models/paginated_tweets.rb +8 -4
  58. data/lib/x_twitter_scraper/models/paginated_users.rb +8 -4
  59. data/lib/x_twitter_scraper/models/radar_item.rb +99 -6
  60. data/lib/x_twitter_scraper/models/radar_retrieve_trending_topics_params.rb +39 -14
  61. data/lib/x_twitter_scraper/models/radar_retrieve_trending_topics_response.rb +14 -5
  62. data/lib/x_twitter_scraper/models/search_tweet.rb +236 -0
  63. data/lib/x_twitter_scraper/models/subscribe_create_params.rb +21 -1
  64. data/lib/x_twitter_scraper/models/subscribe_create_response.rb +10 -10
  65. data/lib/x_twitter_scraper/models/trend_list_params.rb +7 -4
  66. data/lib/x_twitter_scraper/models/tweet_media.rb +77 -0
  67. data/lib/x_twitter_scraper/models/user_profile.rb +258 -0
  68. data/lib/x_twitter_scraper/models/webhook.rb +46 -1
  69. data/lib/x_twitter_scraper/models/webhook_create_response.rb +2 -1
  70. data/lib/x_twitter_scraper/models/{api_key_revoke_params.rb → webhook_resume_params.rb} +2 -2
  71. data/lib/x_twitter_scraper/models/webhook_resume_response.rb +31 -0
  72. data/lib/x_twitter_scraper/models/x/account_connection_challenge_submit_params.rb +31 -0
  73. data/lib/x_twitter_scraper/models/x/account_connection_challenge_submit_response.rb +66 -0
  74. data/lib/x_twitter_scraper/models/x/account_create_params.rb +1 -9
  75. data/lib/x_twitter_scraper/models/x/account_create_response.rb +30 -1
  76. data/lib/x_twitter_scraper/models/x/account_reauth_params.rb +9 -1
  77. data/lib/x_twitter_scraper/models/x/account_reauth_response.rb +36 -1
  78. data/lib/x_twitter_scraper/models/x/bookmark_retrieve_folders_response.rb +6 -2
  79. data/lib/x_twitter_scraper/models/x/communities/join_create_response.rb +20 -0
  80. data/lib/x_twitter_scraper/models/x/communities/join_delete_all_response.rb +20 -0
  81. data/lib/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rb +17 -1
  82. data/lib/x_twitter_scraper/models/x/communities/tweet_list_params.rb +43 -9
  83. data/lib/x_twitter_scraper/models/x/community_retrieve_info_response.rb +69 -1
  84. data/lib/x_twitter_scraper/models/x/community_retrieve_members_params.rb +14 -1
  85. data/lib/x_twitter_scraper/models/x/community_retrieve_search_params.rb +38 -4
  86. data/lib/x_twitter_scraper/models/x/dm_retrieve_history_params.rb +13 -1
  87. data/lib/x_twitter_scraper/models/x/dm_retrieve_history_response.rb +26 -9
  88. data/lib/x_twitter_scraper/models/x/dm_send_params.rb +3 -9
  89. data/lib/x_twitter_scraper/models/x/follower_check_params.rb +4 -4
  90. data/lib/x_twitter_scraper/models/x/list_retrieve_followers_params.rb +15 -1
  91. data/lib/x_twitter_scraper/models/x/list_retrieve_members_params.rb +9 -1
  92. data/lib/x_twitter_scraper/models/x/list_retrieve_tweets_params.rb +16 -1
  93. data/lib/x_twitter_scraper/models/x/media_download_params.rb +19 -3
  94. data/lib/x_twitter_scraper/models/x/media_upload_params.rb +8 -15
  95. data/lib/x_twitter_scraper/models/x/media_upload_response.rb +10 -1
  96. data/lib/x_twitter_scraper/models/x/profile_update_avatar_params.rb +8 -8
  97. data/lib/x_twitter_scraper/models/x/profile_update_banner_params.rb +8 -8
  98. data/lib/x_twitter_scraper/models/x/tweet_author.rb +4 -21
  99. data/lib/x_twitter_scraper/models/x/tweet_create_params.rb +18 -11
  100. data/lib/x_twitter_scraper/models/x/tweet_create_response.rb +28 -1
  101. data/lib/x_twitter_scraper/models/x/tweet_detail.rb +109 -43
  102. data/lib/x_twitter_scraper/models/x/tweet_get_favoriters_params.rb +15 -1
  103. data/lib/x_twitter_scraper/models/x/tweet_get_quotes_params.rb +268 -1
  104. data/lib/x_twitter_scraper/models/x/tweet_get_replies_params.rb +268 -1
  105. data/lib/x_twitter_scraper/models/x/tweet_get_retweeters_params.rb +15 -1
  106. data/lib/x_twitter_scraper/models/x/tweet_get_thread_params.rb +16 -1
  107. data/lib/x_twitter_scraper/models/x/tweet_retrieve_response.rb +9 -4
  108. data/lib/x_twitter_scraper/models/x/tweet_search_params.rb +314 -8
  109. data/lib/x_twitter_scraper/models/x/user_remove_follower_params.rb +31 -0
  110. data/lib/x_twitter_scraper/models/x/user_remove_follower_response.rb +18 -0
  111. data/lib/x_twitter_scraper/models/x/user_retrieve_batch_params.rb +6 -2
  112. data/lib/x_twitter_scraper/models/x/user_retrieve_batch_response.rb +83 -0
  113. data/lib/x_twitter_scraper/models/x/user_retrieve_followers_params.rb +25 -3
  114. data/lib/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rb +16 -1
  115. data/lib/x_twitter_scraper/models/x/user_retrieve_following_params.rb +25 -3
  116. data/lib/x_twitter_scraper/models/x/user_retrieve_likes_params.rb +268 -1
  117. data/lib/x_twitter_scraper/models/x/user_retrieve_media_params.rb +268 -1
  118. data/lib/x_twitter_scraper/models/x/user_retrieve_mentions_params.rb +268 -1
  119. data/lib/x_twitter_scraper/models/x/user_retrieve_replies_params.rb +306 -0
  120. data/lib/x_twitter_scraper/models/x/user_retrieve_tweets_params.rb +268 -1
  121. data/lib/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rb +16 -1
  122. data/lib/x_twitter_scraper/models/x/write_action_retrieve_params.rb +22 -0
  123. data/lib/x_twitter_scraper/models/x/write_action_retrieve_response.rb +173 -0
  124. data/lib/x_twitter_scraper/models/x/x_account.rb +56 -2
  125. data/lib/x_twitter_scraper/models/x/x_account_detail.rb +23 -8
  126. data/lib/x_twitter_scraper/models/x_get_article_response.rb +189 -11
  127. data/lib/x_twitter_scraper/models/x_get_home_timeline_params.rb +2 -2
  128. data/lib/x_twitter_scraper/models/x_get_notifications_params.rb +3 -3
  129. data/lib/x_twitter_scraper/models/x_get_trends_params.rb +17 -1
  130. data/lib/x_twitter_scraper/models.rb +21 -21
  131. data/lib/x_twitter_scraper/resources/account.rb +1 -3
  132. data/lib/x_twitter_scraper/resources/compose.rb +1 -1
  133. data/lib/x_twitter_scraper/resources/credits.rb +54 -4
  134. data/lib/x_twitter_scraper/resources/drafts.rb +7 -4
  135. data/lib/x_twitter_scraper/resources/draws.rb +14 -8
  136. data/lib/x_twitter_scraper/resources/events.rb +7 -5
  137. data/lib/x_twitter_scraper/resources/extractions.rb +145 -20
  138. data/lib/x_twitter_scraper/resources/guest_wallets.rb +108 -0
  139. data/lib/x_twitter_scraper/resources/monitors/keywords.rb +128 -0
  140. data/lib/x_twitter_scraper/resources/monitors.rb +13 -5
  141. data/lib/x_twitter_scraper/resources/radar.rb +8 -6
  142. data/lib/x_twitter_scraper/resources/styles.rb +1 -1
  143. data/lib/x_twitter_scraper/resources/subscribe.rb +9 -4
  144. data/lib/x_twitter_scraper/resources/support/tickets.rb +3 -3
  145. data/lib/x_twitter_scraper/resources/trends.rb +7 -4
  146. data/lib/x_twitter_scraper/resources/webhooks.rb +25 -5
  147. data/lib/x_twitter_scraper/resources/x/account_connection_challenges.rb +41 -0
  148. data/lib/x_twitter_scraper/resources/x/accounts.rb +7 -13
  149. data/lib/x_twitter_scraper/resources/x/bookmarks.rb +1 -1
  150. data/lib/x_twitter_scraper/resources/x/communities/join.rb +6 -6
  151. data/lib/x_twitter_scraper/resources/x/communities/tweets.rb +27 -10
  152. data/lib/x_twitter_scraper/resources/x/communities.rb +27 -11
  153. data/lib/x_twitter_scraper/resources/x/dm.rb +9 -6
  154. data/lib/x_twitter_scraper/resources/x/followers.rb +4 -4
  155. data/lib/x_twitter_scraper/resources/x/lists.rb +22 -9
  156. data/lib/x_twitter_scraper/resources/x/media.rb +11 -9
  157. data/lib/x_twitter_scraper/resources/x/profile.rb +6 -6
  158. data/lib/x_twitter_scraper/resources/x/tweets.rb +282 -28
  159. data/lib/x_twitter_scraper/resources/x/users.rb +485 -34
  160. data/lib/x_twitter_scraper/resources/x/write_actions.rb +37 -0
  161. data/lib/x_twitter_scraper/resources/x.rb +33 -13
  162. data/lib/x_twitter_scraper/version.rb +1 -1
  163. data/lib/x_twitter_scraper.rb +41 -27
  164. data/rbi/x_twitter_scraper/client.rbi +14 -22
  165. data/rbi/x_twitter_scraper/models/account_retrieve_response.rbi +181 -23
  166. data/rbi/x_twitter_scraper/models/content_disclosure.rbi +149 -0
  167. data/rbi/x_twitter_scraper/models/{integration_retrieve_params.rbi → credit_redirect_topup_checkout_params.rbi} +14 -6
  168. data/rbi/x_twitter_scraper/models/credit_retrieve_balance_response.rbi +35 -9
  169. data/rbi/x_twitter_scraper/models/{integration_list_deliveries_params.rbi → credit_retrieve_topup_status_params.rbi} +8 -17
  170. data/rbi/x_twitter_scraper/models/credit_retrieve_topup_status_response.rbi +107 -0
  171. data/rbi/x_twitter_scraper/models/credit_topup_balance_params.rbi +20 -6
  172. data/rbi/x_twitter_scraper/models/credit_topup_balance_response.rbi +19 -5
  173. data/rbi/x_twitter_scraper/models/draft_list_params.rbi +8 -2
  174. data/rbi/x_twitter_scraper/models/draw_detail.rbi +2 -0
  175. data/rbi/x_twitter_scraper/models/draw_export_params.rbi +3 -12
  176. data/rbi/x_twitter_scraper/models/draw_list_item.rbi +2 -0
  177. data/rbi/x_twitter_scraper/models/draw_list_params.rbi +16 -10
  178. data/rbi/x_twitter_scraper/models/draw_run_response.rbi +15 -1
  179. data/rbi/x_twitter_scraper/models/embedded_tweet.rbi +255 -0
  180. data/rbi/x_twitter_scraper/models/error.rbi +865 -87
  181. data/rbi/x_twitter_scraper/models/event.rbi +63 -4
  182. data/rbi/x_twitter_scraper/models/event_detail.rbi +73 -5
  183. data/rbi/x_twitter_scraper/models/event_list_params.rbi +16 -10
  184. data/rbi/x_twitter_scraper/models/event_type.rbi +58 -4
  185. data/rbi/x_twitter_scraper/models/extraction_estimate_cost_params.rbi +580 -2
  186. data/rbi/x_twitter_scraper/models/extraction_estimate_cost_response.rbi +98 -14
  187. data/rbi/x_twitter_scraper/models/extraction_export_results_params.rbi +3 -13
  188. data/rbi/x_twitter_scraper/models/extraction_job.rbi +15 -0
  189. data/rbi/x_twitter_scraper/models/extraction_list_params.rbi +31 -10
  190. data/rbi/x_twitter_scraper/models/extraction_retrieve_params.rbi +8 -8
  191. data/rbi/x_twitter_scraper/models/extraction_retrieve_response.rbi +2 -2
  192. data/rbi/x_twitter_scraper/models/extraction_run_params.rbi +546 -2
  193. data/rbi/x_twitter_scraper/models/extraction_run_response.rbi +15 -0
  194. data/rbi/x_twitter_scraper/models/guest_wallet_amount.rbi +39 -0
  195. data/rbi/x_twitter_scraper/models/guest_wallet_create_params.rbi +58 -0
  196. data/rbi/x_twitter_scraper/models/guest_wallet_create_response.rbi +243 -0
  197. data/rbi/x_twitter_scraper/models/{integration_list_params.rbi → guest_wallet_retrieve_status_params.rbi} +2 -2
  198. data/rbi/x_twitter_scraper/models/guest_wallet_retrieve_status_response.rbi +402 -0
  199. data/rbi/x_twitter_scraper/models/guest_wallet_topup_params.rbi +58 -0
  200. data/rbi/x_twitter_scraper/models/guest_wallet_topup_response.rbi +293 -0
  201. data/rbi/x_twitter_scraper/models/monitor.rbi +8 -0
  202. data/rbi/x_twitter_scraper/models/monitor_create_response.rbi +14 -0
  203. data/rbi/x_twitter_scraper/models/monitors/keyword_create_params.rbi +56 -0
  204. data/rbi/x_twitter_scraper/models/monitors/keyword_create_response.rbi +75 -0
  205. data/rbi/x_twitter_scraper/models/monitors/keyword_deactivate_params.rbi +40 -0
  206. data/rbi/x_twitter_scraper/models/monitors/keyword_deactivate_response.rbi +28 -0
  207. data/rbi/x_twitter_scraper/models/monitors/keyword_list_params.rbi +34 -0
  208. data/rbi/x_twitter_scraper/models/monitors/keyword_list_response.rbi +123 -0
  209. data/rbi/x_twitter_scraper/models/monitors/keyword_retrieve_params.rbi +40 -0
  210. data/rbi/x_twitter_scraper/models/monitors/keyword_retrieve_response.rbi +75 -0
  211. data/rbi/x_twitter_scraper/models/monitors/keyword_update_params.rbi +72 -0
  212. data/rbi/x_twitter_scraper/models/monitors/keyword_update_response.rbi +75 -0
  213. data/rbi/x_twitter_scraper/models/paginated_tweets.rbi +8 -4
  214. data/rbi/x_twitter_scraper/models/paginated_users.rbi +8 -4
  215. data/rbi/x_twitter_scraper/models/radar_item.rbi +131 -6
  216. data/rbi/x_twitter_scraper/models/radar_retrieve_trending_topics_params.rbi +109 -20
  217. data/rbi/x_twitter_scraper/models/radar_retrieve_trending_topics_response.rbi +22 -5
  218. data/rbi/x_twitter_scraper/models/search_tweet.rbi +316 -0
  219. data/rbi/x_twitter_scraper/models/subscribe_create_params.rbi +62 -2
  220. data/rbi/x_twitter_scraper/models/subscribe_create_response.rbi +10 -23
  221. data/rbi/x_twitter_scraper/models/trend_list_params.rbi +4 -4
  222. data/rbi/x_twitter_scraper/models/tweet_media.rbi +130 -0
  223. data/rbi/x_twitter_scraper/models/user_profile.rbi +346 -0
  224. data/rbi/x_twitter_scraper/models/webhook.rbi +57 -0
  225. data/rbi/x_twitter_scraper/models/webhook_create_response.rbi +2 -0
  226. data/rbi/x_twitter_scraper/models/{api_key_revoke_params.rbi → webhook_resume_params.rbi} +2 -2
  227. data/rbi/x_twitter_scraper/models/webhook_resume_response.rbi +55 -0
  228. data/rbi/x_twitter_scraper/models/x/account_connection_challenge_submit_params.rbi +54 -0
  229. data/rbi/x_twitter_scraper/models/x/account_connection_challenge_submit_response.rbi +131 -0
  230. data/rbi/x_twitter_scraper/models/x/account_create_params.rbi +0 -11
  231. data/rbi/x_twitter_scraper/models/x/account_create_response.rbi +79 -1
  232. data/rbi/x_twitter_scraper/models/x/account_reauth_params.rbi +11 -0
  233. data/rbi/x_twitter_scraper/models/x/account_reauth_response.rbi +96 -5
  234. data/rbi/x_twitter_scraper/models/x/bookmark_retrieve_folders_response.rbi +9 -1
  235. data/rbi/x_twitter_scraper/models/x/communities/join_create_response.rbi +30 -0
  236. data/rbi/x_twitter_scraper/models/x/communities/join_delete_all_response.rbi +30 -0
  237. data/rbi/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rbi +19 -0
  238. data/rbi/x_twitter_scraper/models/x/communities/tweet_list_params.rbi +85 -10
  239. data/rbi/x_twitter_scraper/models/x/community_retrieve_info_response.rbi +115 -0
  240. data/rbi/x_twitter_scraper/models/x/community_retrieve_members_params.rbi +15 -0
  241. data/rbi/x_twitter_scraper/models/x/community_retrieve_search_params.rbi +79 -4
  242. data/rbi/x_twitter_scraper/models/x/dm_retrieve_history_params.rbi +10 -0
  243. data/rbi/x_twitter_scraper/models/x/dm_retrieve_history_response.rbi +20 -13
  244. data/rbi/x_twitter_scraper/models/x/dm_send_params.rbi +2 -9
  245. data/rbi/x_twitter_scraper/models/x/follower_check_params.rbi +4 -4
  246. data/rbi/x_twitter_scraper/models/x/list_retrieve_followers_params.rbi +17 -0
  247. data/rbi/x_twitter_scraper/models/x/list_retrieve_members_params.rbi +11 -0
  248. data/rbi/x_twitter_scraper/models/x/list_retrieve_tweets_params.rbi +19 -0
  249. data/rbi/x_twitter_scraper/models/x/media_download_params.rbi +24 -2
  250. data/rbi/x_twitter_scraper/models/x/media_upload_params.rbi +9 -18
  251. data/rbi/x_twitter_scraper/models/x/media_upload_response.rbi +20 -5
  252. data/rbi/x_twitter_scraper/models/x/profile_update_avatar_params.rbi +9 -9
  253. data/rbi/x_twitter_scraper/models/x/profile_update_banner_params.rbi +9 -9
  254. data/rbi/x_twitter_scraper/models/x/tweet_author.rbi +8 -39
  255. data/rbi/x_twitter_scraper/models/x/tweet_create_params.rbi +23 -12
  256. data/rbi/x_twitter_scraper/models/x/tweet_create_response.rbi +41 -5
  257. data/rbi/x_twitter_scraper/models/x/tweet_detail.rbi +156 -115
  258. data/rbi/x_twitter_scraper/models/x/tweet_get_favoriters_params.rbi +17 -0
  259. data/rbi/x_twitter_scraper/models/x/tweet_get_quotes_params.rbi +508 -0
  260. data/rbi/x_twitter_scraper/models/x/tweet_get_replies_params.rbi +512 -0
  261. data/rbi/x_twitter_scraper/models/x/tweet_get_retweeters_params.rbi +17 -0
  262. data/rbi/x_twitter_scraper/models/x/tweet_get_thread_params.rbi +19 -0
  263. data/rbi/x_twitter_scraper/models/x/tweet_retrieve_response.rbi +8 -4
  264. data/rbi/x_twitter_scraper/models/x/tweet_search_params.rbi +557 -7
  265. data/rbi/x_twitter_scraper/models/x/user_remove_follower_params.rbi +54 -0
  266. data/rbi/x_twitter_scraper/models/x/user_remove_follower_response.rbi +28 -0
  267. data/rbi/x_twitter_scraper/models/x/user_retrieve_batch_params.rbi +4 -2
  268. data/rbi/x_twitter_scraper/models/x/user_retrieve_batch_response.rbi +102 -0
  269. data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_params.rbi +30 -2
  270. data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rbi +17 -0
  271. data/rbi/x_twitter_scraper/models/x/user_retrieve_following_params.rbi +30 -2
  272. data/rbi/x_twitter_scraper/models/x/user_retrieve_likes_params.rbi +520 -0
  273. data/rbi/x_twitter_scraper/models/x/user_retrieve_media_params.rbi +520 -0
  274. data/rbi/x_twitter_scraper/models/x/user_retrieve_mentions_params.rbi +523 -0
  275. data/rbi/x_twitter_scraper/models/x/user_retrieve_replies_params.rbi +591 -0
  276. data/rbi/x_twitter_scraper/models/x/user_retrieve_tweets_params.rbi +523 -0
  277. data/rbi/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rbi +17 -0
  278. data/rbi/x_twitter_scraper/models/x/write_action_retrieve_params.rbi +40 -0
  279. data/rbi/x_twitter_scraper/models/x/write_action_retrieve_response.rbi +313 -0
  280. data/rbi/x_twitter_scraper/models/x/x_account.rbi +87 -4
  281. data/rbi/x_twitter_scraper/models/x/x_account_detail.rbi +58 -10
  282. data/rbi/x_twitter_scraper/models/x_get_article_response.rbi +308 -12
  283. data/rbi/x_twitter_scraper/models/x_get_home_timeline_params.rbi +2 -2
  284. data/rbi/x_twitter_scraper/models/x_get_notifications_params.rbi +3 -3
  285. data/rbi/x_twitter_scraper/models/x_get_trends_params.rbi +30 -2
  286. data/rbi/x_twitter_scraper/models.rbi +24 -22
  287. data/rbi/x_twitter_scraper/resources/account.rbi +1 -1
  288. data/rbi/x_twitter_scraper/resources/compose.rbi +1 -1
  289. data/rbi/x_twitter_scraper/resources/credits.rbi +37 -5
  290. data/rbi/x_twitter_scraper/resources/drafts.rbi +7 -4
  291. data/rbi/x_twitter_scraper/resources/draws.rbi +14 -8
  292. data/rbi/x_twitter_scraper/resources/events.rbi +8 -5
  293. data/rbi/x_twitter_scraper/resources/extractions.rbi +210 -11
  294. data/rbi/x_twitter_scraper/resources/guest_wallets.rbi +76 -0
  295. data/rbi/x_twitter_scraper/resources/monitors/keywords.rbi +95 -0
  296. data/rbi/x_twitter_scraper/resources/monitors.rbi +12 -5
  297. data/rbi/x_twitter_scraper/resources/radar.rbi +12 -8
  298. data/rbi/x_twitter_scraper/resources/styles.rbi +1 -1
  299. data/rbi/x_twitter_scraper/resources/subscribe.rbi +9 -3
  300. data/rbi/x_twitter_scraper/resources/support/tickets.rbi +3 -3
  301. data/rbi/x_twitter_scraper/resources/trends.rbi +4 -4
  302. data/rbi/x_twitter_scraper/resources/webhooks.rbi +19 -5
  303. data/rbi/x_twitter_scraper/resources/x/account_connection_challenges.rbi +36 -0
  304. data/rbi/x_twitter_scraper/resources/x/accounts.rbi +6 -6
  305. data/rbi/x_twitter_scraper/resources/x/bookmarks.rbi +1 -1
  306. data/rbi/x_twitter_scraper/resources/x/communities/join.rbi +8 -4
  307. data/rbi/x_twitter_scraper/resources/x/communities/tweets.rbi +25 -7
  308. data/rbi/x_twitter_scraper/resources/x/communities.rbi +23 -7
  309. data/rbi/x_twitter_scraper/resources/x/dm.rbi +5 -2
  310. data/rbi/x_twitter_scraper/resources/x/followers.rbi +4 -4
  311. data/rbi/x_twitter_scraper/resources/x/lists.rbi +20 -4
  312. data/rbi/x_twitter_scraper/resources/x/media.rbi +13 -9
  313. data/rbi/x_twitter_scraper/resources/x/profile.rbi +8 -8
  314. data/rbi/x_twitter_scraper/resources/x/tweets.rbi +309 -16
  315. data/rbi/x_twitter_scraper/resources/x/users.rbi +520 -18
  316. data/rbi/x_twitter_scraper/resources/x/write_actions.rbi +31 -0
  317. data/rbi/x_twitter_scraper/resources/x.rbi +30 -12
  318. data/sig/x_twitter_scraper/client.rbs +2 -6
  319. data/sig/x_twitter_scraper/models/account_retrieve_response.rbs +106 -19
  320. data/sig/x_twitter_scraper/models/content_disclosure.rbs +78 -0
  321. data/sig/x_twitter_scraper/models/{api_key_create_params.rbs → credit_redirect_topup_checkout_params.rbs} +7 -8
  322. data/sig/x_twitter_scraper/models/credit_retrieve_balance_response.rbs +22 -12
  323. data/sig/x_twitter_scraper/models/{integration_list_deliveries_params.rbs → credit_retrieve_topup_status_params.rbs} +6 -12
  324. data/sig/x_twitter_scraper/models/credit_retrieve_topup_status_response.rbs +45 -0
  325. data/sig/x_twitter_scraper/models/credit_topup_balance_params.rbs +11 -4
  326. data/sig/x_twitter_scraper/models/credit_topup_balance_response.rbs +6 -4
  327. data/sig/x_twitter_scraper/models/draw_export_params.rbs +2 -6
  328. data/sig/x_twitter_scraper/models/draw_list_params.rbs +5 -5
  329. data/sig/x_twitter_scraper/models/embedded_tweet.rbs +187 -0
  330. data/sig/x_twitter_scraper/models/error.rbs +341 -54
  331. data/sig/x_twitter_scraper/models/event.rbs +34 -2
  332. data/sig/x_twitter_scraper/models/event_detail.rbs +34 -2
  333. data/sig/x_twitter_scraper/models/event_list_params.rbs +5 -5
  334. data/sig/x_twitter_scraper/models/event_type.rbs +34 -4
  335. data/sig/x_twitter_scraper/models/extraction_estimate_cost_params.rbs +269 -1
  336. data/sig/x_twitter_scraper/models/extraction_estimate_cost_response.rbs +46 -12
  337. data/sig/x_twitter_scraper/models/extraction_export_results_params.rbs +2 -6
  338. data/sig/x_twitter_scraper/models/extraction_job.rbs +6 -0
  339. data/sig/x_twitter_scraper/models/extraction_list_params.rbs +11 -5
  340. data/sig/x_twitter_scraper/models/extraction_retrieve_params.rbs +5 -5
  341. data/sig/x_twitter_scraper/models/extraction_run_params.rbs +269 -1
  342. data/sig/x_twitter_scraper/models/extraction_run_response.rbs +6 -0
  343. data/sig/x_twitter_scraper/models/guest_wallet_amount.rbs +15 -0
  344. data/sig/x_twitter_scraper/models/guest_wallet_create_params.rbs +32 -0
  345. data/sig/x_twitter_scraper/models/guest_wallet_create_response.rbs +125 -0
  346. data/sig/x_twitter_scraper/models/{api_key_list_params.rbs → guest_wallet_retrieve_status_params.rbs} +2 -2
  347. data/sig/x_twitter_scraper/models/guest_wallet_retrieve_status_response.rbs +163 -0
  348. data/sig/x_twitter_scraper/models/guest_wallet_topup_params.rbs +32 -0
  349. data/sig/x_twitter_scraper/models/guest_wallet_topup_response.rbs +146 -0
  350. data/sig/x_twitter_scraper/models/monitor.rbs +5 -0
  351. data/sig/x_twitter_scraper/models/monitor_create_response.rbs +10 -0
  352. data/sig/x_twitter_scraper/models/monitors/keyword_create_params.rbs +33 -0
  353. data/sig/x_twitter_scraper/models/monitors/keyword_create_response.rbs +47 -0
  354. data/sig/x_twitter_scraper/models/monitors/keyword_deactivate_params.rbs +25 -0
  355. data/sig/x_twitter_scraper/models/monitors/keyword_deactivate_response.rbs +15 -0
  356. data/sig/x_twitter_scraper/models/monitors/keyword_list_params.rbs +19 -0
  357. data/sig/x_twitter_scraper/models/monitors/keyword_list_response.rbs +69 -0
  358. data/sig/x_twitter_scraper/models/monitors/keyword_retrieve_params.rbs +25 -0
  359. data/sig/x_twitter_scraper/models/monitors/keyword_retrieve_response.rbs +47 -0
  360. data/sig/x_twitter_scraper/models/monitors/keyword_update_params.rbs +44 -0
  361. data/sig/x_twitter_scraper/models/monitors/keyword_update_response.rbs +47 -0
  362. data/sig/x_twitter_scraper/models/paginated_tweets.rbs +4 -4
  363. data/sig/x_twitter_scraper/models/paginated_users.rbs +4 -4
  364. data/sig/x_twitter_scraper/models/radar_item.rbs +81 -8
  365. data/sig/x_twitter_scraper/models/radar_retrieve_trending_topics_params.rbs +44 -10
  366. data/sig/x_twitter_scraper/models/radar_retrieve_trending_topics_response.rbs +14 -4
  367. data/sig/x_twitter_scraper/models/search_tweet.rbs +205 -0
  368. data/sig/x_twitter_scraper/models/subscribe_create_params.rbs +28 -3
  369. data/sig/x_twitter_scraper/models/subscribe_create_response.rbs +10 -16
  370. data/sig/x_twitter_scraper/models/tweet_media.rbs +72 -0
  371. data/sig/x_twitter_scraper/models/user_profile.rbs +247 -0
  372. data/sig/x_twitter_scraper/models/webhook.rbs +27 -0
  373. data/sig/x_twitter_scraper/models/{api_key_revoke_params.rbs → webhook_resume_params.rbs} +2 -2
  374. data/sig/x_twitter_scraper/models/webhook_resume_response.rbs +26 -0
  375. data/sig/x_twitter_scraper/models/x/account_connection_challenge_submit_params.rbs +30 -0
  376. data/sig/x_twitter_scraper/models/x/account_connection_challenge_submit_response.rbs +68 -0
  377. data/sig/x_twitter_scraper/models/x/account_create_params.rbs +0 -7
  378. data/sig/x_twitter_scraper/models/x/account_create_response.rbs +37 -1
  379. data/sig/x_twitter_scraper/models/x/account_reauth_params.rbs +7 -1
  380. data/sig/x_twitter_scraper/models/x/account_reauth_response.rbs +51 -3
  381. data/sig/x_twitter_scraper/models/x/communities/join_create_response.rbs +17 -0
  382. data/sig/x_twitter_scraper/models/x/communities/join_delete_all_response.rbs +17 -0
  383. data/sig/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rbs +7 -1
  384. data/sig/x_twitter_scraper/models/x/communities/tweet_list_params.rbs +34 -5
  385. data/sig/x_twitter_scraper/models/x/community_retrieve_info_response.rbs +66 -0
  386. data/sig/x_twitter_scraper/models/x/community_retrieve_members_params.rbs +7 -1
  387. data/sig/x_twitter_scraper/models/x/community_retrieve_search_params.rbs +34 -5
  388. data/sig/x_twitter_scraper/models/x/dm_retrieve_history_params.rbs +5 -1
  389. data/sig/x_twitter_scraper/models/x/dm_retrieve_history_response.rbs +13 -10
  390. data/sig/x_twitter_scraper/models/x/dm_send_params.rbs +1 -8
  391. data/sig/x_twitter_scraper/models/x/list_retrieve_followers_params.rbs +7 -1
  392. data/sig/x_twitter_scraper/models/x/list_retrieve_members_params.rbs +7 -1
  393. data/sig/x_twitter_scraper/models/x/list_retrieve_tweets_params.rbs +7 -0
  394. data/sig/x_twitter_scraper/models/x/media_download_params.rbs +18 -1
  395. data/sig/x_twitter_scraper/models/x/media_upload_params.rbs +4 -14
  396. data/sig/x_twitter_scraper/models/x/media_upload_response.rbs +10 -3
  397. data/sig/x_twitter_scraper/models/x/profile_update_avatar_params.rbs +4 -4
  398. data/sig/x_twitter_scraper/models/x/profile_update_banner_params.rbs +4 -4
  399. data/sig/x_twitter_scraper/models/x/tweet_author.rbs +8 -31
  400. data/sig/x_twitter_scraper/models/x/tweet_create_params.rbs +13 -11
  401. data/sig/x_twitter_scraper/models/x/tweet_create_response.rbs +30 -3
  402. data/sig/x_twitter_scraper/models/x/tweet_detail.rbs +99 -61
  403. data/sig/x_twitter_scraper/models/x/tweet_get_favoriters_params.rbs +7 -1
  404. data/sig/x_twitter_scraper/models/x/tweet_get_quotes_params.rbs +242 -1
  405. data/sig/x_twitter_scraper/models/x/tweet_get_replies_params.rbs +247 -1
  406. data/sig/x_twitter_scraper/models/x/tweet_get_retweeters_params.rbs +7 -1
  407. data/sig/x_twitter_scraper/models/x/tweet_get_thread_params.rbs +7 -1
  408. data/sig/x_twitter_scraper/models/x/tweet_search_params.rbs +277 -1
  409. data/sig/x_twitter_scraper/models/x/user_remove_follower_params.rbs +30 -0
  410. data/sig/x_twitter_scraper/models/x/user_remove_follower_response.rbs +15 -0
  411. data/sig/x_twitter_scraper/models/x/user_retrieve_batch_response.rbs +57 -0
  412. data/sig/x_twitter_scraper/models/x/user_retrieve_followers_params.rbs +19 -1
  413. data/sig/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rbs +7 -1
  414. data/sig/x_twitter_scraper/models/x/user_retrieve_following_params.rbs +19 -1
  415. data/sig/x_twitter_scraper/models/x/user_retrieve_likes_params.rbs +245 -1
  416. data/sig/x_twitter_scraper/models/x/user_retrieve_media_params.rbs +245 -1
  417. data/sig/x_twitter_scraper/models/x/user_retrieve_mentions_params.rbs +247 -1
  418. data/sig/x_twitter_scraper/models/x/user_retrieve_replies_params.rbs +283 -0
  419. data/sig/x_twitter_scraper/models/x/user_retrieve_tweets_params.rbs +242 -1
  420. data/sig/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rbs +7 -1
  421. data/sig/x_twitter_scraper/models/x/write_action_retrieve_params.rbs +25 -0
  422. data/sig/x_twitter_scraper/models/x/write_action_retrieve_response.rbs +177 -0
  423. data/sig/x_twitter_scraper/models/x/x_account.rbs +41 -3
  424. data/sig/x_twitter_scraper/models/x/x_account_detail.rbs +26 -7
  425. data/sig/x_twitter_scraper/models/x_get_article_response.rbs +193 -6
  426. data/sig/x_twitter_scraper/models/x_get_trends_params.rbs +20 -3
  427. data/sig/x_twitter_scraper/models.rbs +21 -21
  428. data/sig/x_twitter_scraper/resources/credits.rbs +12 -1
  429. data/sig/x_twitter_scraper/resources/draws.rbs +2 -2
  430. data/sig/x_twitter_scraper/resources/events.rbs +1 -1
  431. data/sig/x_twitter_scraper/resources/extractions.rbs +61 -3
  432. data/sig/x_twitter_scraper/resources/guest_wallets.rbs +25 -0
  433. data/sig/x_twitter_scraper/resources/monitors/keywords.rbs +36 -0
  434. data/sig/x_twitter_scraper/resources/monitors.rbs +2 -0
  435. data/sig/x_twitter_scraper/resources/radar.rbs +3 -2
  436. data/sig/x_twitter_scraper/resources/subscribe.rbs +1 -0
  437. data/sig/x_twitter_scraper/resources/webhooks.rbs +5 -0
  438. data/sig/x_twitter_scraper/resources/x/account_connection_challenges.rbs +15 -0
  439. data/sig/x_twitter_scraper/resources/x/accounts.rbs +1 -1
  440. data/sig/x_twitter_scraper/resources/x/communities/join.rbs +2 -2
  441. data/sig/x_twitter_scraper/resources/x/communities/tweets.rbs +4 -1
  442. data/sig/x_twitter_scraper/resources/x/communities.rbs +4 -1
  443. data/sig/x_twitter_scraper/resources/x/dm.rbs +1 -1
  444. data/sig/x_twitter_scraper/resources/x/lists.rbs +3 -0
  445. data/sig/x_twitter_scraper/resources/x/media.rbs +3 -2
  446. data/sig/x_twitter_scraper/resources/x/profile.rbs +2 -2
  447. data/sig/x_twitter_scraper/resources/x/tweets.rbs +88 -2
  448. data/sig/x_twitter_scraper/resources/x/users.rbs +151 -2
  449. data/sig/x_twitter_scraper/resources/x/write_actions.rbs +14 -0
  450. data/sig/x_twitter_scraper/resources/x.rbs +6 -0
  451. metadata +141 -84
  452. data/lib/x_twitter_scraper/models/api_key.rb +0 -47
  453. data/lib/x_twitter_scraper/models/api_key_create_params.rb +0 -20
  454. data/lib/x_twitter_scraper/models/api_key_create_response.rb +0 -40
  455. data/lib/x_twitter_scraper/models/api_key_list_params.rb +0 -14
  456. data/lib/x_twitter_scraper/models/api_key_list_response.rb +0 -16
  457. data/lib/x_twitter_scraper/models/api_key_revoke_response.rb +0 -16
  458. data/lib/x_twitter_scraper/models/integration.rb +0 -93
  459. data/lib/x_twitter_scraper/models/integration_create_params.rb +0 -58
  460. data/lib/x_twitter_scraper/models/integration_delete_params.rb +0 -20
  461. data/lib/x_twitter_scraper/models/integration_delete_response.rb +0 -16
  462. data/lib/x_twitter_scraper/models/integration_delivery.rb +0 -71
  463. data/lib/x_twitter_scraper/models/integration_list_deliveries_params.rb +0 -29
  464. data/lib/x_twitter_scraper/models/integration_list_deliveries_response.rb +0 -17
  465. data/lib/x_twitter_scraper/models/integration_list_response.rb +0 -16
  466. data/lib/x_twitter_scraper/models/integration_retrieve_params.rb +0 -20
  467. data/lib/x_twitter_scraper/models/integration_send_test_params.rb +0 -20
  468. data/lib/x_twitter_scraper/models/integration_send_test_response.rb +0 -16
  469. data/lib/x_twitter_scraper/models/integration_update_params.rb +0 -77
  470. data/lib/x_twitter_scraper/models/x/community_action_result.rb +0 -31
  471. data/lib/x_twitter_scraper/models/x/search_tweet.rb +0 -119
  472. data/lib/x_twitter_scraper/models/x/user_profile.rb +0 -80
  473. data/lib/x_twitter_scraper/resources/api_keys.rb +0 -77
  474. data/lib/x_twitter_scraper/resources/bot/platform_links.rb +0 -16
  475. data/lib/x_twitter_scraper/resources/bot.rb +0 -18
  476. data/lib/x_twitter_scraper/resources/integrations.rb +0 -182
  477. data/rbi/x_twitter_scraper/models/api_key.rbi +0 -69
  478. data/rbi/x_twitter_scraper/models/api_key_create_params.rbi +0 -41
  479. data/rbi/x_twitter_scraper/models/api_key_create_response.rbi +0 -56
  480. data/rbi/x_twitter_scraper/models/api_key_list_params.rbi +0 -32
  481. data/rbi/x_twitter_scraper/models/api_key_list_response.rbi +0 -30
  482. data/rbi/x_twitter_scraper/models/api_key_revoke_response.rbi +0 -26
  483. data/rbi/x_twitter_scraper/models/integration.rbi +0 -117
  484. data/rbi/x_twitter_scraper/models/integration_create_params.rbi +0 -95
  485. data/rbi/x_twitter_scraper/models/integration_delete_params.rbi +0 -38
  486. data/rbi/x_twitter_scraper/models/integration_delete_response.rbi +0 -26
  487. data/rbi/x_twitter_scraper/models/integration_delivery.rbi +0 -108
  488. data/rbi/x_twitter_scraper/models/integration_list_deliveries_response.rbi +0 -34
  489. data/rbi/x_twitter_scraper/models/integration_list_response.rbi +0 -34
  490. data/rbi/x_twitter_scraper/models/integration_send_test_params.rbi +0 -38
  491. data/rbi/x_twitter_scraper/models/integration_send_test_response.rbi +0 -26
  492. data/rbi/x_twitter_scraper/models/integration_update_params.rbi +0 -115
  493. data/rbi/x_twitter_scraper/models/x/community_action_result.rbi +0 -49
  494. data/rbi/x_twitter_scraper/models/x/search_tweet.rbi +0 -181
  495. data/rbi/x_twitter_scraper/models/x/user_profile.rbi +0 -125
  496. data/rbi/x_twitter_scraper/resources/api_keys.rbi +0 -46
  497. data/rbi/x_twitter_scraper/resources/bot/platform_links.rbi +0 -16
  498. data/rbi/x_twitter_scraper/resources/bot.rbi +0 -15
  499. data/rbi/x_twitter_scraper/resources/integrations.rbi +0 -133
  500. data/sig/x_twitter_scraper/models/api_key.rbs +0 -47
  501. data/sig/x_twitter_scraper/models/api_key_create_response.rbs +0 -40
  502. data/sig/x_twitter_scraper/models/api_key_list_response.rbs +0 -13
  503. data/sig/x_twitter_scraper/models/api_key_revoke_response.rbs +0 -13
  504. data/sig/x_twitter_scraper/models/integration.rbs +0 -78
  505. data/sig/x_twitter_scraper/models/integration_create_params.rbs +0 -51
  506. data/sig/x_twitter_scraper/models/integration_delete_params.rbs +0 -23
  507. data/sig/x_twitter_scraper/models/integration_delete_response.rbs +0 -13
  508. data/sig/x_twitter_scraper/models/integration_delivery.rbs +0 -75
  509. data/sig/x_twitter_scraper/models/integration_list_deliveries_response.rbs +0 -18
  510. data/sig/x_twitter_scraper/models/integration_list_params.rbs +0 -15
  511. data/sig/x_twitter_scraper/models/integration_list_response.rbs +0 -16
  512. data/sig/x_twitter_scraper/models/integration_retrieve_params.rbs +0 -23
  513. data/sig/x_twitter_scraper/models/integration_send_test_params.rbs +0 -23
  514. data/sig/x_twitter_scraper/models/integration_send_test_response.rbs +0 -13
  515. data/sig/x_twitter_scraper/models/integration_update_params.rbs +0 -77
  516. data/sig/x_twitter_scraper/models/x/community_action_result.rbs +0 -28
  517. data/sig/x_twitter_scraper/models/x/search_tweet.rbs +0 -121
  518. data/sig/x_twitter_scraper/models/x/user_profile.rbs +0 -88
  519. data/sig/x_twitter_scraper/resources/api_keys.rbs +0 -21
  520. data/sig/x_twitter_scraper/resources/bot/platform_links.rbs +0 -9
  521. data/sig/x_twitter_scraper/resources/bot.rbs +0 -9
  522. data/sig/x_twitter_scraper/resources/integrations.rbs +0 -52
@@ -1,29 +1,29 @@
1
1
  module XTwitterScraper
2
2
  module Models
3
3
  type draw_list_params =
4
- { after: String, limit: Integer }
4
+ { cursor: String, limit: Integer }
5
5
  & XTwitterScraper::Internal::Type::request_parameters
6
6
 
7
7
  class DrawListParams < XTwitterScraper::Internal::Type::BaseModel
8
8
  extend XTwitterScraper::Internal::Type::RequestParameters::Converter
9
9
  include XTwitterScraper::Internal::Type::RequestParameters
10
10
 
11
- attr_reader after: String?
11
+ attr_reader cursor: String?
12
12
 
13
- def after=: (String) -> String
13
+ def cursor=: (String) -> String
14
14
 
15
15
  attr_reader limit: Integer?
16
16
 
17
17
  def limit=: (Integer) -> Integer
18
18
 
19
19
  def initialize: (
20
- ?after: String,
20
+ ?cursor: String,
21
21
  ?limit: Integer,
22
22
  ?request_options: XTwitterScraper::request_opts
23
23
  ) -> void
24
24
 
25
25
  def to_hash: -> {
26
- after: String,
26
+ cursor: String,
27
27
  limit: Integer,
28
28
  request_options: XTwitterScraper::RequestOptions
29
29
  }
@@ -0,0 +1,187 @@
1
+ module XTwitterScraper
2
+ module Models
3
+ type embedded_tweet =
4
+ {
5
+ id: String,
6
+ bookmark_count: Integer,
7
+ like_count: Integer,
8
+ quote_count: Integer,
9
+ reply_count: Integer,
10
+ retweet_count: Integer,
11
+ text: String,
12
+ view_count: Integer,
13
+ author: XTwitterScraper::UserProfile,
14
+ content_disclosure: XTwitterScraper::ContentDisclosure,
15
+ conversation_id: String,
16
+ created_at: String,
17
+ display_text_range: ::Array[Integer],
18
+ entities: ::Hash[Symbol, top],
19
+ in_reply_to_id: String,
20
+ in_reply_to_user_id: String,
21
+ in_reply_to_username: String,
22
+ is_limited_reply: bool,
23
+ is_note_tweet: bool,
24
+ is_quote_status: bool,
25
+ is_reply: bool,
26
+ lang: String,
27
+ media: ::Array[XTwitterScraper::TweetMedia],
28
+ source: String,
29
+ type: String,
30
+ url: String
31
+ }
32
+
33
+ class EmbeddedTweet < XTwitterScraper::Internal::Type::BaseModel
34
+ attr_accessor id: String
35
+
36
+ attr_accessor bookmark_count: Integer
37
+
38
+ attr_accessor like_count: Integer
39
+
40
+ attr_accessor quote_count: Integer
41
+
42
+ attr_accessor reply_count: Integer
43
+
44
+ attr_accessor retweet_count: Integer
45
+
46
+ attr_accessor text: String
47
+
48
+ attr_accessor view_count: Integer
49
+
50
+ attr_reader author: XTwitterScraper::UserProfile?
51
+
52
+ def author=: (
53
+ XTwitterScraper::UserProfile
54
+ ) -> XTwitterScraper::UserProfile
55
+
56
+ attr_reader content_disclosure: XTwitterScraper::ContentDisclosure?
57
+
58
+ def content_disclosure=: (
59
+ XTwitterScraper::ContentDisclosure
60
+ ) -> XTwitterScraper::ContentDisclosure
61
+
62
+ attr_reader conversation_id: String?
63
+
64
+ def conversation_id=: (String) -> String
65
+
66
+ attr_reader created_at: String?
67
+
68
+ def created_at=: (String) -> String
69
+
70
+ attr_reader display_text_range: ::Array[Integer]?
71
+
72
+ def display_text_range=: (::Array[Integer]) -> ::Array[Integer]
73
+
74
+ attr_reader entities: ::Hash[Symbol, top]?
75
+
76
+ def entities=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
77
+
78
+ attr_reader in_reply_to_id: String?
79
+
80
+ def in_reply_to_id=: (String) -> String
81
+
82
+ attr_reader in_reply_to_user_id: String?
83
+
84
+ def in_reply_to_user_id=: (String) -> String
85
+
86
+ attr_reader in_reply_to_username: String?
87
+
88
+ def in_reply_to_username=: (String) -> String
89
+
90
+ attr_reader is_limited_reply: bool?
91
+
92
+ def is_limited_reply=: (bool) -> bool
93
+
94
+ attr_reader is_note_tweet: bool?
95
+
96
+ def is_note_tweet=: (bool) -> bool
97
+
98
+ attr_reader is_quote_status: bool?
99
+
100
+ def is_quote_status=: (bool) -> bool
101
+
102
+ attr_reader is_reply: bool?
103
+
104
+ def is_reply=: (bool) -> bool
105
+
106
+ attr_reader lang: String?
107
+
108
+ def lang=: (String) -> String
109
+
110
+ attr_reader media: ::Array[XTwitterScraper::TweetMedia]?
111
+
112
+ def media=: (
113
+ ::Array[XTwitterScraper::TweetMedia]
114
+ ) -> ::Array[XTwitterScraper::TweetMedia]
115
+
116
+ attr_reader source: String?
117
+
118
+ def source=: (String) -> String
119
+
120
+ attr_reader type: String?
121
+
122
+ def type=: (String) -> String
123
+
124
+ attr_reader url: String?
125
+
126
+ def url=: (String) -> String
127
+
128
+ def initialize: (
129
+ id: String,
130
+ bookmark_count: Integer,
131
+ like_count: Integer,
132
+ quote_count: Integer,
133
+ reply_count: Integer,
134
+ retweet_count: Integer,
135
+ text: String,
136
+ view_count: Integer,
137
+ ?author: XTwitterScraper::UserProfile,
138
+ ?content_disclosure: XTwitterScraper::ContentDisclosure,
139
+ ?conversation_id: String,
140
+ ?created_at: String,
141
+ ?display_text_range: ::Array[Integer],
142
+ ?entities: ::Hash[Symbol, top],
143
+ ?in_reply_to_id: String,
144
+ ?in_reply_to_user_id: String,
145
+ ?in_reply_to_username: String,
146
+ ?is_limited_reply: bool,
147
+ ?is_note_tweet: bool,
148
+ ?is_quote_status: bool,
149
+ ?is_reply: bool,
150
+ ?lang: String,
151
+ ?media: ::Array[XTwitterScraper::TweetMedia],
152
+ ?source: String,
153
+ ?type: String,
154
+ ?url: String
155
+ ) -> void
156
+
157
+ def to_hash: -> {
158
+ id: String,
159
+ bookmark_count: Integer,
160
+ like_count: Integer,
161
+ quote_count: Integer,
162
+ reply_count: Integer,
163
+ retweet_count: Integer,
164
+ text: String,
165
+ view_count: Integer,
166
+ author: XTwitterScraper::UserProfile,
167
+ content_disclosure: XTwitterScraper::ContentDisclosure,
168
+ conversation_id: String,
169
+ created_at: String,
170
+ display_text_range: ::Array[Integer],
171
+ entities: ::Hash[Symbol, top],
172
+ in_reply_to_id: String,
173
+ in_reply_to_user_id: String,
174
+ in_reply_to_username: String,
175
+ is_limited_reply: bool,
176
+ is_note_tweet: bool,
177
+ is_quote_status: bool,
178
+ is_reply: bool,
179
+ lang: String,
180
+ media: ::Array[XTwitterScraper::TweetMedia],
181
+ source: String,
182
+ type: String,
183
+ url: String
184
+ }
185
+ end
186
+ end
187
+ end
@@ -10,62 +10,349 @@ module XTwitterScraper
10
10
  def to_hash: -> { error: XTwitterScraper::Models::Error::error }
11
11
 
12
12
  type error =
13
- :internal_error
14
- | :invalid_format
15
- | :invalid_id
16
- | :invalid_input
17
- | :invalid_params
18
- | :invalid_tool_type
19
- | :invalid_tweet_id
20
- | :invalid_tweet_url
21
- | :invalid_username
22
- | :missing_params
23
- | :missing_query
24
- | :monitor_already_exists
25
- | :monitor_limit_reached
26
- | :no_subscription
27
- | :not_found
28
- | :stream_registration_failed
29
- | :subscription_inactive
30
- | :tweet_not_found
31
- | :unauthenticated
32
- | :usage_limit_reached
33
- | :user_not_found
34
- | :webhook_inactive
35
- | :x_api_rate_limited
36
- | :x_api_unavailable
37
- | :x_api_unauthorized
13
+ XTwitterScraper::Models::Error::Error::legacy_error_code
14
+ | XTwitterScraper::Error::Error::StructuredError
38
15
 
39
16
  module Error
40
- extend XTwitterScraper::Internal::Type::Enum
41
-
42
- INTERNAL_ERROR: :internal_error
43
- INVALID_FORMAT: :invalid_format
44
- INVALID_ID: :invalid_id
45
- INVALID_INPUT: :invalid_input
46
- INVALID_PARAMS: :invalid_params
47
- INVALID_TOOL_TYPE: :invalid_tool_type
48
- INVALID_TWEET_ID: :invalid_tweet_id
49
- INVALID_TWEET_URL: :invalid_tweet_url
50
- INVALID_USERNAME: :invalid_username
51
- MISSING_PARAMS: :missing_params
52
- MISSING_QUERY: :missing_query
53
- MONITOR_ALREADY_EXISTS: :monitor_already_exists
54
- MONITOR_LIMIT_REACHED: :monitor_limit_reached
55
- NO_SUBSCRIPTION: :no_subscription
56
- NOT_FOUND: :not_found
57
- STREAM_REGISTRATION_FAILED: :stream_registration_failed
58
- SUBSCRIPTION_INACTIVE: :subscription_inactive
59
- TWEET_NOT_FOUND: :tweet_not_found
60
- UNAUTHENTICATED: :unauthenticated
61
- USAGE_LIMIT_REACHED: :usage_limit_reached
62
- USER_NOT_FOUND: :user_not_found
63
- WEBHOOK_INACTIVE: :webhook_inactive
64
- X_API_RATE_LIMITED: :x_api_rate_limited
65
- X_API_UNAVAILABLE: :x_api_unavailable
66
- X_API_UNAUTHORIZED: :x_api_unauthorized
67
-
68
- def self?.values: -> ::Array[XTwitterScraper::Models::Error::error]
17
+ extend XTwitterScraper::Internal::Type::Union
18
+
19
+ type legacy_error_code =
20
+ :internal_error
21
+ | :account_already_connected
22
+ | :account_needs_reauth
23
+ | :account_not_found
24
+ | :account_required
25
+ | :account_restricted
26
+ | :api_key_limit_reached
27
+ | :article_not_found
28
+ | :dm_not_permitted
29
+ | :invalid_format
30
+ | :invalid_id
31
+ | :invalid_input
32
+ | :invalid_params
33
+ | :invalid_tool_type
34
+ | :invalid_tweet_id
35
+ | :invalid_tweet_url
36
+ | :invalid_user_id
37
+ | :invalid_user_ids
38
+ | :invalid_username
39
+ | :invalid_json
40
+ | :insufficient_credits
41
+ | :login_cooldown
42
+ | :login_failed
43
+ | :media_download_failed
44
+ | :missing_params
45
+ | :missing_query
46
+ | :monitor_already_exists
47
+ | :no_media
48
+ | :no_credits
49
+ | :no_subscription
50
+ | :not_found
51
+ | :payment_failed
52
+ | :rate_limit_exceeded
53
+ | :service_unavailable
54
+ | :style_not_found
55
+ | :subscription_inactive
56
+ | :tweet_not_found
57
+ | :unauthenticated
58
+ | :unsupported_field
59
+ | :user_not_found
60
+ | :x_account_feature_required
61
+ | :x_account_protected
62
+ | :x_account_suspended
63
+ | :x_api_rate_limited
64
+ | :x_api_unavailable
65
+ | :x_api_unauthorized
66
+ | :x_auth_failure
67
+ | :x_content_too_long
68
+ | :x_daily_limit
69
+ | :x_dm_not_allowed
70
+ | :x_duplicate_action
71
+ | :x_login_auth_failed
72
+ | :x_login_challenge
73
+ | :x_login_denied
74
+ | :x_login_failed
75
+ | :x_login_proxy_error
76
+ | :x_login_rate_limited
77
+ | :x_login_service_unavailable
78
+ | :x_login_suspended
79
+ | :x_rate_limited
80
+ | :x_rejected
81
+ | :x_target_not_found
82
+ | :x_transient_error
83
+ | :x_user_lookup_failed
84
+ | :x_write_ambiguous
85
+ | :x_write_failed
86
+ | :x_write_unconfirmed
87
+
88
+ module LegacyErrorCode
89
+ extend XTwitterScraper::Internal::Type::Enum
90
+
91
+ INTERNAL_ERROR: :internal_error
92
+ ACCOUNT_ALREADY_CONNECTED: :account_already_connected
93
+ ACCOUNT_NEEDS_REAUTH: :account_needs_reauth
94
+ ACCOUNT_NOT_FOUND: :account_not_found
95
+ ACCOUNT_REQUIRED: :account_required
96
+ ACCOUNT_RESTRICTED: :account_restricted
97
+ API_KEY_LIMIT_REACHED: :api_key_limit_reached
98
+ ARTICLE_NOT_FOUND: :article_not_found
99
+ DM_NOT_PERMITTED: :dm_not_permitted
100
+ INVALID_FORMAT: :invalid_format
101
+ INVALID_ID: :invalid_id
102
+ INVALID_INPUT: :invalid_input
103
+ INVALID_PARAMS: :invalid_params
104
+ INVALID_TOOL_TYPE: :invalid_tool_type
105
+ INVALID_TWEET_ID: :invalid_tweet_id
106
+ INVALID_TWEET_URL: :invalid_tweet_url
107
+ INVALID_USER_ID: :invalid_user_id
108
+ INVALID_USER_IDS: :invalid_user_ids
109
+ INVALID_USERNAME: :invalid_username
110
+ INVALID_JSON: :invalid_json
111
+ INSUFFICIENT_CREDITS: :insufficient_credits
112
+ LOGIN_COOLDOWN: :login_cooldown
113
+ LOGIN_FAILED: :login_failed
114
+ MEDIA_DOWNLOAD_FAILED: :media_download_failed
115
+ MISSING_PARAMS: :missing_params
116
+ MISSING_QUERY: :missing_query
117
+ MONITOR_ALREADY_EXISTS: :monitor_already_exists
118
+ NO_MEDIA: :no_media
119
+ NO_CREDITS: :no_credits
120
+ NO_SUBSCRIPTION: :no_subscription
121
+ NOT_FOUND: :not_found
122
+ PAYMENT_FAILED: :payment_failed
123
+ RATE_LIMIT_EXCEEDED: :rate_limit_exceeded
124
+ SERVICE_UNAVAILABLE: :service_unavailable
125
+ STYLE_NOT_FOUND: :style_not_found
126
+ SUBSCRIPTION_INACTIVE: :subscription_inactive
127
+ TWEET_NOT_FOUND: :tweet_not_found
128
+ UNAUTHENTICATED: :unauthenticated
129
+ UNSUPPORTED_FIELD: :unsupported_field
130
+ USER_NOT_FOUND: :user_not_found
131
+ X_ACCOUNT_FEATURE_REQUIRED: :x_account_feature_required
132
+ X_ACCOUNT_PROTECTED: :x_account_protected
133
+ X_ACCOUNT_SUSPENDED: :x_account_suspended
134
+ X_API_RATE_LIMITED: :x_api_rate_limited
135
+ X_API_UNAVAILABLE: :x_api_unavailable
136
+ X_API_UNAUTHORIZED: :x_api_unauthorized
137
+ X_AUTH_FAILURE: :x_auth_failure
138
+ X_CONTENT_TOO_LONG: :x_content_too_long
139
+ X_DAILY_LIMIT: :x_daily_limit
140
+ X_DM_NOT_ALLOWED: :x_dm_not_allowed
141
+ X_DUPLICATE_ACTION: :x_duplicate_action
142
+ X_LOGIN_AUTH_FAILED: :x_login_auth_failed
143
+ X_LOGIN_CHALLENGE: :x_login_challenge
144
+ X_LOGIN_DENIED: :x_login_denied
145
+ X_LOGIN_FAILED: :x_login_failed
146
+ X_LOGIN_PROXY_ERROR: :x_login_proxy_error
147
+ X_LOGIN_RATE_LIMITED: :x_login_rate_limited
148
+ X_LOGIN_SERVICE_UNAVAILABLE: :x_login_service_unavailable
149
+ X_LOGIN_SUSPENDED: :x_login_suspended
150
+ X_RATE_LIMITED: :x_rate_limited
151
+ X_REJECTED: :x_rejected
152
+ X_TARGET_NOT_FOUND: :x_target_not_found
153
+ X_TRANSIENT_ERROR: :x_transient_error
154
+ X_USER_LOOKUP_FAILED: :x_user_lookup_failed
155
+ X_WRITE_AMBIGUOUS: :x_write_ambiguous
156
+ X_WRITE_FAILED: :x_write_failed
157
+ X_WRITE_UNCONFIRMED: :x_write_unconfirmed
158
+
159
+ def self?.values: -> ::Array[XTwitterScraper::Models::Error::Error::legacy_error_code]
160
+ end
161
+
162
+ type structured_error =
163
+ {
164
+ code: XTwitterScraper::Models::Error::Error::StructuredError::code,
165
+ message: String,
166
+ type: XTwitterScraper::Models::Error::Error::StructuredError::type_
167
+ }
168
+
169
+ class StructuredError < XTwitterScraper::Internal::Type::BaseModel
170
+ attr_accessor code: XTwitterScraper::Models::Error::Error::StructuredError::code
171
+
172
+ attr_accessor message: String
173
+
174
+ attr_accessor type: XTwitterScraper::Models::Error::Error::StructuredError::type_
175
+
176
+ def initialize: (
177
+ code: XTwitterScraper::Models::Error::Error::StructuredError::code,
178
+ message: String,
179
+ type: XTwitterScraper::Models::Error::Error::StructuredError::type_
180
+ ) -> void
181
+
182
+ def to_hash: -> {
183
+ code: XTwitterScraper::Models::Error::Error::StructuredError::code,
184
+ message: String,
185
+ type: XTwitterScraper::Models::Error::Error::StructuredError::type_
186
+ }
187
+
188
+ type code =
189
+ :internal_error
190
+ | :account_already_connected
191
+ | :account_needs_reauth
192
+ | :account_not_found
193
+ | :account_required
194
+ | :account_restricted
195
+ | :api_key_limit_reached
196
+ | :article_not_found
197
+ | :dm_not_permitted
198
+ | :invalid_format
199
+ | :invalid_id
200
+ | :invalid_input
201
+ | :invalid_params
202
+ | :invalid_tool_type
203
+ | :invalid_tweet_id
204
+ | :invalid_tweet_url
205
+ | :invalid_user_id
206
+ | :invalid_user_ids
207
+ | :invalid_username
208
+ | :invalid_json
209
+ | :insufficient_credits
210
+ | :login_cooldown
211
+ | :login_failed
212
+ | :media_download_failed
213
+ | :missing_params
214
+ | :missing_query
215
+ | :monitor_already_exists
216
+ | :no_media
217
+ | :no_credits
218
+ | :no_subscription
219
+ | :not_found
220
+ | :payment_failed
221
+ | :rate_limit_exceeded
222
+ | :service_unavailable
223
+ | :style_not_found
224
+ | :subscription_inactive
225
+ | :tweet_not_found
226
+ | :unauthenticated
227
+ | :unsupported_field
228
+ | :user_not_found
229
+ | :x_account_feature_required
230
+ | :x_account_protected
231
+ | :x_account_suspended
232
+ | :x_api_rate_limited
233
+ | :x_api_unavailable
234
+ | :x_api_unauthorized
235
+ | :x_auth_failure
236
+ | :x_content_too_long
237
+ | :x_daily_limit
238
+ | :x_dm_not_allowed
239
+ | :x_duplicate_action
240
+ | :x_login_auth_failed
241
+ | :x_login_challenge
242
+ | :x_login_denied
243
+ | :x_login_failed
244
+ | :x_login_proxy_error
245
+ | :x_login_rate_limited
246
+ | :x_login_service_unavailable
247
+ | :x_login_suspended
248
+ | :x_rate_limited
249
+ | :x_rejected
250
+ | :x_target_not_found
251
+ | :x_transient_error
252
+ | :x_user_lookup_failed
253
+ | :x_write_ambiguous
254
+ | :x_write_failed
255
+ | :x_write_unconfirmed
256
+
257
+ module Code
258
+ extend XTwitterScraper::Internal::Type::Enum
259
+
260
+ INTERNAL_ERROR: :internal_error
261
+ ACCOUNT_ALREADY_CONNECTED: :account_already_connected
262
+ ACCOUNT_NEEDS_REAUTH: :account_needs_reauth
263
+ ACCOUNT_NOT_FOUND: :account_not_found
264
+ ACCOUNT_REQUIRED: :account_required
265
+ ACCOUNT_RESTRICTED: :account_restricted
266
+ API_KEY_LIMIT_REACHED: :api_key_limit_reached
267
+ ARTICLE_NOT_FOUND: :article_not_found
268
+ DM_NOT_PERMITTED: :dm_not_permitted
269
+ INVALID_FORMAT: :invalid_format
270
+ INVALID_ID: :invalid_id
271
+ INVALID_INPUT: :invalid_input
272
+ INVALID_PARAMS: :invalid_params
273
+ INVALID_TOOL_TYPE: :invalid_tool_type
274
+ INVALID_TWEET_ID: :invalid_tweet_id
275
+ INVALID_TWEET_URL: :invalid_tweet_url
276
+ INVALID_USER_ID: :invalid_user_id
277
+ INVALID_USER_IDS: :invalid_user_ids
278
+ INVALID_USERNAME: :invalid_username
279
+ INVALID_JSON: :invalid_json
280
+ INSUFFICIENT_CREDITS: :insufficient_credits
281
+ LOGIN_COOLDOWN: :login_cooldown
282
+ LOGIN_FAILED: :login_failed
283
+ MEDIA_DOWNLOAD_FAILED: :media_download_failed
284
+ MISSING_PARAMS: :missing_params
285
+ MISSING_QUERY: :missing_query
286
+ MONITOR_ALREADY_EXISTS: :monitor_already_exists
287
+ NO_MEDIA: :no_media
288
+ NO_CREDITS: :no_credits
289
+ NO_SUBSCRIPTION: :no_subscription
290
+ NOT_FOUND: :not_found
291
+ PAYMENT_FAILED: :payment_failed
292
+ RATE_LIMIT_EXCEEDED: :rate_limit_exceeded
293
+ SERVICE_UNAVAILABLE: :service_unavailable
294
+ STYLE_NOT_FOUND: :style_not_found
295
+ SUBSCRIPTION_INACTIVE: :subscription_inactive
296
+ TWEET_NOT_FOUND: :tweet_not_found
297
+ UNAUTHENTICATED: :unauthenticated
298
+ UNSUPPORTED_FIELD: :unsupported_field
299
+ USER_NOT_FOUND: :user_not_found
300
+ X_ACCOUNT_FEATURE_REQUIRED: :x_account_feature_required
301
+ X_ACCOUNT_PROTECTED: :x_account_protected
302
+ X_ACCOUNT_SUSPENDED: :x_account_suspended
303
+ X_API_RATE_LIMITED: :x_api_rate_limited
304
+ X_API_UNAVAILABLE: :x_api_unavailable
305
+ X_API_UNAUTHORIZED: :x_api_unauthorized
306
+ X_AUTH_FAILURE: :x_auth_failure
307
+ X_CONTENT_TOO_LONG: :x_content_too_long
308
+ X_DAILY_LIMIT: :x_daily_limit
309
+ X_DM_NOT_ALLOWED: :x_dm_not_allowed
310
+ X_DUPLICATE_ACTION: :x_duplicate_action
311
+ X_LOGIN_AUTH_FAILED: :x_login_auth_failed
312
+ X_LOGIN_CHALLENGE: :x_login_challenge
313
+ X_LOGIN_DENIED: :x_login_denied
314
+ X_LOGIN_FAILED: :x_login_failed
315
+ X_LOGIN_PROXY_ERROR: :x_login_proxy_error
316
+ X_LOGIN_RATE_LIMITED: :x_login_rate_limited
317
+ X_LOGIN_SERVICE_UNAVAILABLE: :x_login_service_unavailable
318
+ X_LOGIN_SUSPENDED: :x_login_suspended
319
+ X_RATE_LIMITED: :x_rate_limited
320
+ X_REJECTED: :x_rejected
321
+ X_TARGET_NOT_FOUND: :x_target_not_found
322
+ X_TRANSIENT_ERROR: :x_transient_error
323
+ X_USER_LOOKUP_FAILED: :x_user_lookup_failed
324
+ X_WRITE_AMBIGUOUS: :x_write_ambiguous
325
+ X_WRITE_FAILED: :x_write_failed
326
+ X_WRITE_UNCONFIRMED: :x_write_unconfirmed
327
+
328
+ def self?.values: -> ::Array[XTwitterScraper::Models::Error::Error::StructuredError::code]
329
+ end
330
+
331
+ type type_ =
332
+ :api_error
333
+ | :authentication_error
334
+ | :billing_error
335
+ | :dependency_error
336
+ | :invalid_request_error
337
+ | :permission_error
338
+ | :rate_limit_error
339
+
340
+ module Type
341
+ extend XTwitterScraper::Internal::Type::Enum
342
+
343
+ API_ERROR: :api_error
344
+ AUTHENTICATION_ERROR: :authentication_error
345
+ BILLING_ERROR: :billing_error
346
+ DEPENDENCY_ERROR: :dependency_error
347
+ INVALID_REQUEST_ERROR: :invalid_request_error
348
+ PERMISSION_ERROR: :permission_error
349
+ RATE_LIMIT_ERROR: :rate_limit_error
350
+
351
+ def self?.values: -> ::Array[XTwitterScraper::Models::Error::Error::StructuredError::type_]
352
+ end
353
+ end
354
+
355
+ def self?.variants: -> ::Array[XTwitterScraper::Models::Error::error]
69
356
  end
70
357
  end
71
358
  end
@@ -5,8 +5,11 @@ module XTwitterScraper
5
5
  id: String,
6
6
  data: ::Hash[Symbol, top],
7
7
  monitor_id: String,
8
+ monitor_type: XTwitterScraper::Models::Event::monitor_type,
8
9
  occurred_at: Time,
9
10
  type: XTwitterScraper::Models::event_type,
11
+ keyword_monitor_id: String,
12
+ query: String,
10
13
  username: String
11
14
  }
12
15
 
@@ -17,29 +20,58 @@ module XTwitterScraper
17
20
 
18
21
  attr_accessor monitor_id: String
19
22
 
23
+ attr_accessor monitor_type: XTwitterScraper::Models::Event::monitor_type
24
+
20
25
  attr_accessor occurred_at: Time
21
26
 
22
27
  attr_accessor type: XTwitterScraper::Models::event_type
23
28
 
24
- attr_accessor username: String
29
+ attr_reader keyword_monitor_id: String?
30
+
31
+ def keyword_monitor_id=: (String) -> String
32
+
33
+ attr_reader query: String?
34
+
35
+ def query=: (String) -> String
36
+
37
+ attr_reader username: String?
38
+
39
+ def username=: (String) -> String
25
40
 
26
41
  def initialize: (
27
42
  id: String,
28
43
  data: ::Hash[Symbol, top],
29
44
  monitor_id: String,
45
+ monitor_type: XTwitterScraper::Models::Event::monitor_type,
30
46
  occurred_at: Time,
31
47
  type: XTwitterScraper::Models::event_type,
32
- username: String
48
+ ?keyword_monitor_id: String,
49
+ ?query: String,
50
+ ?username: String
33
51
  ) -> void
34
52
 
35
53
  def to_hash: -> {
36
54
  id: String,
37
55
  data: ::Hash[Symbol, top],
38
56
  monitor_id: String,
57
+ monitor_type: XTwitterScraper::Models::Event::monitor_type,
39
58
  occurred_at: Time,
40
59
  type: XTwitterScraper::Models::event_type,
60
+ keyword_monitor_id: String,
61
+ query: String,
41
62
  username: String
42
63
  }
64
+
65
+ type monitor_type = :account | :keyword
66
+
67
+ module MonitorType
68
+ extend XTwitterScraper::Internal::Type::Enum
69
+
70
+ ACCOUNT: :account
71
+ KEYWORD: :keyword
72
+
73
+ def self?.values: -> ::Array[XTwitterScraper::Models::Event::monitor_type]
74
+ end
43
75
  end
44
76
  end
45
77
  end