x-twitter-scraper 0.3.0 → 0.4.0

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 (456) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +25 -0
  3. data/README.md +5 -5
  4. data/lib/x_twitter_scraper/models/api_key.rb +2 -0
  5. data/lib/x_twitter_scraper/models/api_key_list_response.rb +3 -44
  6. data/lib/x_twitter_scraper/models/delivery.rb +2 -0
  7. data/lib/x_twitter_scraper/models/draft.rb +2 -0
  8. data/lib/x_twitter_scraper/models/draft_detail.rb +3 -0
  9. data/lib/x_twitter_scraper/models/draft_list_params.rb +2 -1
  10. data/lib/x_twitter_scraper/models/draft_list_response.rb +3 -38
  11. data/lib/x_twitter_scraper/models/draw_detail.rb +2 -0
  12. data/lib/x_twitter_scraper/models/draw_export_params.rb +3 -1
  13. data/lib/x_twitter_scraper/models/draw_list_item.rb +2 -0
  14. data/lib/x_twitter_scraper/models/draw_list_params.rb +4 -3
  15. data/lib/x_twitter_scraper/models/draw_list_response.rb +3 -50
  16. data/lib/x_twitter_scraper/models/draw_retrieve_response.rb +8 -124
  17. data/lib/x_twitter_scraper/models/draw_run_response.rb +3 -32
  18. data/lib/x_twitter_scraper/models/error.rb +2 -0
  19. data/lib/x_twitter_scraper/models/event.rb +11 -18
  20. data/lib/x_twitter_scraper/models/event_detail.rb +7 -18
  21. data/lib/x_twitter_scraper/models/event_list_params.rb +10 -21
  22. data/lib/x_twitter_scraper/models/event_list_response.rb +3 -59
  23. data/lib/x_twitter_scraper/models/event_type.rb +1 -0
  24. data/lib/x_twitter_scraper/models/extraction_estimate_cost_params.rb +9 -7
  25. data/lib/x_twitter_scraper/models/extraction_export_results_params.rb +5 -1
  26. data/lib/x_twitter_scraper/models/extraction_job.rb +11 -1
  27. data/lib/x_twitter_scraper/models/extraction_list_params.rb +10 -5
  28. data/lib/x_twitter_scraper/models/extraction_list_response.rb +3 -87
  29. data/lib/x_twitter_scraper/models/extraction_retrieve_params.rb +4 -3
  30. data/lib/x_twitter_scraper/models/extraction_run_params.rb +3 -1
  31. data/lib/x_twitter_scraper/models/extraction_run_response.rb +10 -15
  32. data/lib/x_twitter_scraper/models/integration.rb +12 -32
  33. data/lib/x_twitter_scraper/models/integration_create_params.rb +8 -32
  34. data/lib/x_twitter_scraper/models/integration_delivery.rb +2 -0
  35. data/lib/x_twitter_scraper/models/integration_list_deliveries_params.rb +4 -1
  36. data/lib/x_twitter_scraper/models/integration_list_deliveries_response.rb +3 -67
  37. data/lib/x_twitter_scraper/models/integration_list_response.rb +3 -112
  38. data/lib/x_twitter_scraper/models/integration_update_params.rb +4 -19
  39. data/lib/x_twitter_scraper/models/monitor.rb +12 -17
  40. data/lib/x_twitter_scraper/models/monitor_create_params.rb +4 -19
  41. data/lib/x_twitter_scraper/models/monitor_create_response.rb +8 -17
  42. data/lib/x_twitter_scraper/models/monitor_list_response.rb +3 -60
  43. data/lib/x_twitter_scraper/models/monitor_update_params.rb +7 -19
  44. data/lib/x_twitter_scraper/models/paginated_tweets.rb +5 -96
  45. data/lib/x_twitter_scraper/models/paginated_users.rb +5 -73
  46. data/lib/x_twitter_scraper/models/radar_item.rb +2 -0
  47. data/lib/x_twitter_scraper/models/radar_retrieve_trending_topics_params.rb +20 -3
  48. data/lib/x_twitter_scraper/models/radar_retrieve_trending_topics_response.rb +3 -62
  49. data/lib/x_twitter_scraper/models/style_compare_response.rb +9 -134
  50. data/lib/x_twitter_scraper/models/style_delete_params.rb +4 -4
  51. data/lib/x_twitter_scraper/models/style_get_performance_params.rb +4 -4
  52. data/lib/x_twitter_scraper/models/style_list_response.rb +3 -32
  53. data/lib/x_twitter_scraper/models/style_profile.rb +3 -0
  54. data/lib/x_twitter_scraper/models/style_profile_summary.rb +2 -0
  55. data/lib/x_twitter_scraper/models/style_retrieve_params.rb +4 -4
  56. data/lib/x_twitter_scraper/models/style_update_params.rb +4 -4
  57. data/lib/x_twitter_scraper/models/trend_list_params.rb +2 -1
  58. data/lib/x_twitter_scraper/models/webhook.rb +11 -17
  59. data/lib/x_twitter_scraper/models/webhook_create_params.rb +4 -19
  60. data/lib/x_twitter_scraper/models/webhook_create_response.rb +8 -17
  61. data/lib/x_twitter_scraper/models/webhook_list_deliveries_response.rb +3 -56
  62. data/lib/x_twitter_scraper/models/webhook_list_response.rb +3 -54
  63. data/lib/x_twitter_scraper/models/webhook_update_params.rb +8 -19
  64. data/lib/x_twitter_scraper/models/winner.rb +2 -0
  65. data/lib/x_twitter_scraper/models/x/account_bulk_retry_params.rb +16 -0
  66. data/lib/x_twitter_scraper/models/x/account_bulk_retry_response.rb +19 -0
  67. data/lib/x_twitter_scraper/models/x/account_list_response.rb +3 -38
  68. data/lib/x_twitter_scraper/models/x/account_reauth_params.rb +4 -4
  69. data/lib/x_twitter_scraper/models/x/bookmark_list_params.rb +2 -2
  70. data/lib/x_twitter_scraper/models/x/communities/join_create_params.rb +2 -2
  71. data/lib/x_twitter_scraper/models/x/communities/join_delete_all_params.rb +2 -2
  72. data/lib/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rb +33 -0
  73. data/lib/x_twitter_scraper/models/x/communities/tweet_list_params.rb +6 -6
  74. data/lib/x_twitter_scraper/models/x/community_action_result.rb +2 -0
  75. data/lib/x_twitter_scraper/models/x/community_create_params.rb +2 -2
  76. data/lib/x_twitter_scraper/models/x/community_delete_params.rb +2 -2
  77. data/lib/x_twitter_scraper/models/x/community_retrieve_info_response.rb +6 -6
  78. data/lib/x_twitter_scraper/models/x/community_retrieve_moderators_params.rb +2 -2
  79. data/lib/x_twitter_scraper/models/x/community_retrieve_search_params.rb +2 -2
  80. data/lib/x_twitter_scraper/models/x/dm_retrieve_history_params.rb +2 -2
  81. data/lib/x_twitter_scraper/models/x/dm_send_params.rb +2 -2
  82. data/lib/x_twitter_scraper/models/x/list_retrieve_followers_params.rb +2 -2
  83. data/lib/x_twitter_scraper/models/x/list_retrieve_members_params.rb +2 -2
  84. data/lib/x_twitter_scraper/models/x/list_retrieve_tweets_params.rb +2 -2
  85. data/lib/x_twitter_scraper/models/x/media_upload_params.rb +2 -2
  86. data/lib/x_twitter_scraper/models/x/profile_update_avatar_params.rb +2 -2
  87. data/lib/x_twitter_scraper/models/x/profile_update_banner_params.rb +2 -2
  88. data/lib/x_twitter_scraper/models/x/profile_update_params.rb +2 -2
  89. data/lib/x_twitter_scraper/models/x/search_tweet.rb +20 -1
  90. data/lib/x_twitter_scraper/models/x/tweet_author.rb +2 -0
  91. data/lib/x_twitter_scraper/models/x/tweet_delete_params.rb +6 -6
  92. data/lib/x_twitter_scraper/models/x/tweet_detail.rb +109 -1
  93. data/lib/x_twitter_scraper/models/x/tweet_get_favoriters_params.rb +2 -2
  94. data/lib/x_twitter_scraper/models/x/tweet_get_quotes_params.rb +8 -8
  95. data/lib/x_twitter_scraper/models/x/tweet_get_replies_params.rb +6 -6
  96. data/lib/x_twitter_scraper/models/x/tweet_get_retweeters_params.rb +2 -2
  97. data/lib/x_twitter_scraper/models/x/tweet_get_thread_params.rb +2 -2
  98. data/lib/x_twitter_scraper/models/x/tweet_retrieve_params.rb +4 -4
  99. data/lib/x_twitter_scraper/models/x/tweet_retrieve_response.rb +9 -100
  100. data/lib/x_twitter_scraper/models/x/tweet_search_params.rb +2 -2
  101. data/lib/x_twitter_scraper/models/x/tweets/like_create_params.rb +6 -6
  102. data/lib/x_twitter_scraper/models/x/tweets/like_delete_params.rb +6 -6
  103. data/lib/x_twitter_scraper/models/x/tweets/retweet_create_params.rb +6 -6
  104. data/lib/x_twitter_scraper/models/x/tweets/retweet_delete_params.rb +6 -6
  105. data/lib/x_twitter_scraper/models/x/user_profile.rb +3 -0
  106. data/lib/x_twitter_scraper/models/x/user_retrieve_followers_params.rb +2 -2
  107. data/lib/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rb +2 -2
  108. data/lib/x_twitter_scraper/models/x/user_retrieve_following_params.rb +4 -4
  109. data/lib/x_twitter_scraper/models/x/user_retrieve_likes_params.rb +2 -2
  110. data/lib/x_twitter_scraper/models/x/user_retrieve_media_params.rb +2 -2
  111. data/lib/x_twitter_scraper/models/x/user_retrieve_mentions_params.rb +6 -6
  112. data/lib/x_twitter_scraper/models/x/user_retrieve_params.rb +4 -4
  113. data/lib/x_twitter_scraper/models/x/user_retrieve_search_params.rb +4 -4
  114. data/lib/x_twitter_scraper/models/x/user_retrieve_tweets_params.rb +2 -2
  115. data/lib/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rb +2 -2
  116. data/lib/x_twitter_scraper/models/x/users/follow_create_params.rb +6 -6
  117. data/lib/x_twitter_scraper/models/x/users/follow_delete_all_params.rb +6 -6
  118. data/lib/x_twitter_scraper/models/x/x_account.rb +2 -0
  119. data/lib/x_twitter_scraper/models/x/x_account_detail.rb +3 -0
  120. data/lib/x_twitter_scraper/models/x_get_article_response.rb +5 -38
  121. data/lib/x_twitter_scraper/models/x_get_home_timeline_params.rb +2 -2
  122. data/lib/x_twitter_scraper/models/x_get_notifications_params.rb +2 -2
  123. data/lib/x_twitter_scraper/models/x_get_trends_response.rb +57 -0
  124. data/lib/x_twitter_scraper/resources/drafts.rb +5 -5
  125. data/lib/x_twitter_scraper/resources/draws.rb +3 -3
  126. data/lib/x_twitter_scraper/resources/events.rb +6 -6
  127. data/lib/x_twitter_scraper/resources/extractions.rb +12 -12
  128. data/lib/x_twitter_scraper/resources/integrations.rb +11 -11
  129. data/lib/x_twitter_scraper/resources/monitors.rb +6 -6
  130. data/lib/x_twitter_scraper/resources/radar.rb +1 -1
  131. data/lib/x_twitter_scraper/resources/styles.rb +22 -22
  132. data/lib/x_twitter_scraper/resources/support/tickets.rb +8 -3
  133. data/lib/x_twitter_scraper/resources/trends.rb +2 -2
  134. data/lib/x_twitter_scraper/resources/webhooks.rb +4 -4
  135. data/lib/x_twitter_scraper/resources/x/accounts.rb +24 -4
  136. data/lib/x_twitter_scraper/resources/x/bookmarks.rb +3 -3
  137. data/lib/x_twitter_scraper/resources/x/communities/join.rb +6 -6
  138. data/lib/x_twitter_scraper/resources/x/communities/tweets.rb +30 -5
  139. data/lib/x_twitter_scraper/resources/x/communities.rb +12 -12
  140. data/lib/x_twitter_scraper/resources/x/dm.rb +2 -2
  141. data/lib/x_twitter_scraper/resources/x/lists.rb +11 -11
  142. data/lib/x_twitter_scraper/resources/x/media.rb +1 -1
  143. data/lib/x_twitter_scraper/resources/x/profile.rb +3 -3
  144. data/lib/x_twitter_scraper/resources/x/tweets/like.rb +10 -10
  145. data/lib/x_twitter_scraper/resources/x/tweets/retweet.rb +10 -10
  146. data/lib/x_twitter_scraper/resources/x/tweets.rb +46 -39
  147. data/lib/x_twitter_scraper/resources/x/users/follow.rb +10 -10
  148. data/lib/x_twitter_scraper/resources/x/users.rb +45 -45
  149. data/lib/x_twitter_scraper/resources/x.rb +13 -7
  150. data/lib/x_twitter_scraper/version.rb +1 -1
  151. data/lib/x_twitter_scraper.rb +4 -28
  152. data/rbi/x_twitter_scraper/models/api_key.rbi +1 -0
  153. data/rbi/x_twitter_scraper/models/api_key_list_response.rbi +5 -78
  154. data/rbi/x_twitter_scraper/models/delivery.rbi +1 -0
  155. data/rbi/x_twitter_scraper/models/draft.rbi +1 -0
  156. data/rbi/x_twitter_scraper/models/draft_detail.rbi +1 -0
  157. data/rbi/x_twitter_scraper/models/draft_list_params.rbi +2 -0
  158. data/rbi/x_twitter_scraper/models/draft_list_response.rbi +3 -63
  159. data/rbi/x_twitter_scraper/models/draw_detail.rbi +1 -0
  160. data/rbi/x_twitter_scraper/models/draw_export_params.rbi +3 -0
  161. data/rbi/x_twitter_scraper/models/draw_list_item.rbi +1 -0
  162. data/rbi/x_twitter_scraper/models/draw_list_params.rbi +4 -2
  163. data/rbi/x_twitter_scraper/models/draw_list_response.rbi +3 -76
  164. data/rbi/x_twitter_scraper/models/draw_retrieve_response.rbi +13 -178
  165. data/rbi/x_twitter_scraper/models/draw_run_response.rbi +3 -52
  166. data/rbi/x_twitter_scraper/models/error.rbi +1 -0
  167. data/rbi/x_twitter_scraper/models/event.rbi +14 -31
  168. data/rbi/x_twitter_scraper/models/event_detail.rbi +6 -47
  169. data/rbi/x_twitter_scraper/models/event_list_params.rbi +12 -63
  170. data/rbi/x_twitter_scraper/models/event_list_response.rbi +3 -122
  171. data/rbi/x_twitter_scraper/models/event_type.rbi +1 -0
  172. data/rbi/x_twitter_scraper/models/extraction_estimate_cost_params.rbi +9 -6
  173. data/rbi/x_twitter_scraper/models/extraction_export_results_params.rbi +8 -1
  174. data/rbi/x_twitter_scraper/models/extraction_job.rbi +8 -4
  175. data/rbi/x_twitter_scraper/models/extraction_list_params.rbi +10 -2
  176. data/rbi/x_twitter_scraper/models/extraction_list_response.rbi +3 -254
  177. data/rbi/x_twitter_scraper/models/extraction_retrieve_params.rbi +4 -2
  178. data/rbi/x_twitter_scraper/models/extraction_run_params.rbi +3 -0
  179. data/rbi/x_twitter_scraper/models/extraction_run_response.rbi +12 -40
  180. data/rbi/x_twitter_scraper/models/integration.rbi +12 -81
  181. data/rbi/x_twitter_scraper/models/integration_create_params.rbi +9 -96
  182. data/rbi/x_twitter_scraper/models/integration_delivery.rbi +1 -0
  183. data/rbi/x_twitter_scraper/models/integration_list_deliveries_params.rbi +7 -1
  184. data/rbi/x_twitter_scraper/models/integration_list_deliveries_response.rbi +3 -119
  185. data/rbi/x_twitter_scraper/models/integration_list_response.rbi +3 -227
  186. data/rbi/x_twitter_scraper/models/integration_update_params.rbi +6 -74
  187. data/rbi/x_twitter_scraper/models/monitor.rbi +6 -48
  188. data/rbi/x_twitter_scraper/models/monitor_create_params.rbi +5 -62
  189. data/rbi/x_twitter_scraper/models/monitor_create_response.rbi +12 -70
  190. data/rbi/x_twitter_scraper/models/monitor_list_response.rbi +3 -141
  191. data/rbi/x_twitter_scraper/models/monitor_update_params.rbi +12 -69
  192. data/rbi/x_twitter_scraper/models/paginated_tweets.rbi +4 -169
  193. data/rbi/x_twitter_scraper/models/paginated_users.rbi +4 -120
  194. data/rbi/x_twitter_scraper/models/radar_item.rbi +1 -0
  195. data/rbi/x_twitter_scraper/models/radar_retrieve_trending_topics_params.rbi +78 -4
  196. data/rbi/x_twitter_scraper/models/radar_retrieve_trending_topics_response.rbi +3 -108
  197. data/rbi/x_twitter_scraper/models/style_compare_response.rbi +16 -259
  198. data/rbi/x_twitter_scraper/models/style_delete_params.rbi +4 -4
  199. data/rbi/x_twitter_scraper/models/style_get_performance_params.rbi +4 -4
  200. data/rbi/x_twitter_scraper/models/style_list_response.rbi +3 -54
  201. data/rbi/x_twitter_scraper/models/style_profile.rbi +1 -0
  202. data/rbi/x_twitter_scraper/models/style_profile_summary.rbi +1 -0
  203. data/rbi/x_twitter_scraper/models/style_retrieve_params.rbi +4 -4
  204. data/rbi/x_twitter_scraper/models/style_update_params.rbi +4 -4
  205. data/rbi/x_twitter_scraper/models/trend_list_params.rbi +2 -0
  206. data/rbi/x_twitter_scraper/models/webhook.rbi +13 -49
  207. data/rbi/x_twitter_scraper/models/webhook_create_params.rbi +5 -62
  208. data/rbi/x_twitter_scraper/models/webhook_create_response.rbi +12 -70
  209. data/rbi/x_twitter_scraper/models/webhook_list_deliveries_response.rbi +5 -105
  210. data/rbi/x_twitter_scraper/models/webhook_list_response.rbi +5 -134
  211. data/rbi/x_twitter_scraper/models/webhook_update_params.rbi +6 -68
  212. data/rbi/x_twitter_scraper/models/winner.rbi +1 -0
  213. data/rbi/x_twitter_scraper/models/x/account_bulk_retry_params.rbi +34 -0
  214. data/rbi/x_twitter_scraper/models/x/account_bulk_retry_response.rbi +32 -0
  215. data/rbi/x_twitter_scraper/models/x/account_list_response.rbi +3 -68
  216. data/rbi/x_twitter_scraper/models/x/account_reauth_params.rbi +4 -4
  217. data/rbi/x_twitter_scraper/models/x/bookmark_list_params.rbi +2 -2
  218. data/rbi/x_twitter_scraper/models/x/communities/join_create_params.rbi +2 -2
  219. data/rbi/x_twitter_scraper/models/x/communities/join_delete_all_params.rbi +2 -2
  220. data/rbi/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rbi +59 -0
  221. data/rbi/x_twitter_scraper/models/x/communities/tweet_list_params.rbi +6 -6
  222. data/rbi/x_twitter_scraper/models/x/community_action_result.rbi +1 -0
  223. data/rbi/x_twitter_scraper/models/x/community_create_params.rbi +2 -2
  224. data/rbi/x_twitter_scraper/models/x/community_delete_params.rbi +2 -2
  225. data/rbi/x_twitter_scraper/models/x/community_retrieve_info_response.rbi +6 -6
  226. data/rbi/x_twitter_scraper/models/x/community_retrieve_moderators_params.rbi +2 -2
  227. data/rbi/x_twitter_scraper/models/x/community_retrieve_search_params.rbi +2 -2
  228. data/rbi/x_twitter_scraper/models/x/dm_retrieve_history_params.rbi +2 -2
  229. data/rbi/x_twitter_scraper/models/x/dm_send_params.rbi +2 -2
  230. data/rbi/x_twitter_scraper/models/x/list_retrieve_followers_params.rbi +2 -2
  231. data/rbi/x_twitter_scraper/models/x/list_retrieve_members_params.rbi +2 -2
  232. data/rbi/x_twitter_scraper/models/x/list_retrieve_tweets_params.rbi +2 -2
  233. data/rbi/x_twitter_scraper/models/x/media_upload_params.rbi +2 -2
  234. data/rbi/x_twitter_scraper/models/x/profile_update_avatar_params.rbi +2 -2
  235. data/rbi/x_twitter_scraper/models/x/profile_update_banner_params.rbi +2 -2
  236. data/rbi/x_twitter_scraper/models/x/profile_update_params.rbi +2 -2
  237. data/rbi/x_twitter_scraper/models/x/search_tweet.rbi +12 -0
  238. data/rbi/x_twitter_scraper/models/x/tweet_author.rbi +1 -0
  239. data/rbi/x_twitter_scraper/models/x/tweet_delete_params.rbi +6 -6
  240. data/rbi/x_twitter_scraper/models/x/tweet_detail.rbi +195 -3
  241. data/rbi/x_twitter_scraper/models/x/tweet_get_favoriters_params.rbi +2 -2
  242. data/rbi/x_twitter_scraper/models/x/tweet_get_quotes_params.rbi +8 -8
  243. data/rbi/x_twitter_scraper/models/x/tweet_get_replies_params.rbi +6 -6
  244. data/rbi/x_twitter_scraper/models/x/tweet_get_retweeters_params.rbi +2 -2
  245. data/rbi/x_twitter_scraper/models/x/tweet_get_thread_params.rbi +2 -2
  246. data/rbi/x_twitter_scraper/models/x/tweet_retrieve_params.rbi +4 -7
  247. data/rbi/x_twitter_scraper/models/x/tweet_retrieve_response.rbi +16 -171
  248. data/rbi/x_twitter_scraper/models/x/tweet_search_params.rbi +2 -2
  249. data/rbi/x_twitter_scraper/models/x/tweets/like_create_params.rbi +6 -6
  250. data/rbi/x_twitter_scraper/models/x/tweets/like_delete_params.rbi +6 -6
  251. data/rbi/x_twitter_scraper/models/x/tweets/retweet_create_params.rbi +6 -6
  252. data/rbi/x_twitter_scraper/models/x/tweets/retweet_delete_params.rbi +6 -6
  253. data/rbi/x_twitter_scraper/models/x/user_profile.rbi +1 -0
  254. data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_params.rbi +2 -2
  255. data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rbi +2 -2
  256. data/rbi/x_twitter_scraper/models/x/user_retrieve_following_params.rbi +4 -4
  257. data/rbi/x_twitter_scraper/models/x/user_retrieve_likes_params.rbi +2 -2
  258. data/rbi/x_twitter_scraper/models/x/user_retrieve_media_params.rbi +2 -2
  259. data/rbi/x_twitter_scraper/models/x/user_retrieve_mentions_params.rbi +6 -6
  260. data/rbi/x_twitter_scraper/models/x/user_retrieve_params.rbi +4 -7
  261. data/rbi/x_twitter_scraper/models/x/user_retrieve_search_params.rbi +4 -4
  262. data/rbi/x_twitter_scraper/models/x/user_retrieve_tweets_params.rbi +2 -2
  263. data/rbi/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rbi +2 -2
  264. data/rbi/x_twitter_scraper/models/x/users/follow_create_params.rbi +6 -6
  265. data/rbi/x_twitter_scraper/models/x/users/follow_delete_all_params.rbi +6 -6
  266. data/rbi/x_twitter_scraper/models/x/x_account.rbi +1 -0
  267. data/rbi/x_twitter_scraper/models/x/x_account_detail.rbi +1 -0
  268. data/rbi/x_twitter_scraper/models/x_get_article_response.rbi +10 -71
  269. data/rbi/x_twitter_scraper/models/x_get_home_timeline_params.rbi +2 -2
  270. data/rbi/x_twitter_scraper/models/x_get_notifications_params.rbi +2 -2
  271. data/rbi/x_twitter_scraper/models/x_get_trends_response.rbi +102 -0
  272. data/rbi/x_twitter_scraper/resources/drafts.rbi +3 -2
  273. data/rbi/x_twitter_scraper/resources/draws.rbi +3 -1
  274. data/rbi/x_twitter_scraper/resources/events.rbi +6 -3
  275. data/rbi/x_twitter_scraper/resources/extractions.rbi +12 -5
  276. data/rbi/x_twitter_scraper/resources/integrations.rbi +10 -13
  277. data/rbi/x_twitter_scraper/resources/monitors.rbi +6 -6
  278. data/rbi/x_twitter_scraper/resources/radar.rbi +2 -1
  279. data/rbi/x_twitter_scraper/resources/styles.rbi +15 -15
  280. data/rbi/x_twitter_scraper/resources/support/tickets.rbi +17 -3
  281. data/rbi/x_twitter_scraper/resources/trends.rbi +2 -1
  282. data/rbi/x_twitter_scraper/resources/webhooks.rbi +5 -5
  283. data/rbi/x_twitter_scraper/resources/x/accounts.rbi +13 -3
  284. data/rbi/x_twitter_scraper/resources/x/bookmarks.rbi +2 -2
  285. data/rbi/x_twitter_scraper/resources/x/communities/join.rbi +4 -8
  286. data/rbi/x_twitter_scraper/resources/x/communities/tweets.rbi +21 -4
  287. data/rbi/x_twitter_scraper/resources/x/communities.rbi +9 -9
  288. data/rbi/x_twitter_scraper/resources/x/dm.rbi +2 -2
  289. data/rbi/x_twitter_scraper/resources/x/lists.rbi +8 -8
  290. data/rbi/x_twitter_scraper/resources/x/media.rbi +1 -1
  291. data/rbi/x_twitter_scraper/resources/x/profile.rbi +3 -3
  292. data/rbi/x_twitter_scraper/resources/x/tweets/like.rbi +8 -6
  293. data/rbi/x_twitter_scraper/resources/x/tweets/retweet.rbi +8 -6
  294. data/rbi/x_twitter_scraper/resources/x/tweets.rbi +33 -28
  295. data/rbi/x_twitter_scraper/resources/x/users/follow.rbi +6 -6
  296. data/rbi/x_twitter_scraper/resources/x/users.rbi +33 -34
  297. data/rbi/x_twitter_scraper/resources/x.rbi +11 -5
  298. data/sig/x_twitter_scraper/models/api_key_list_response.rbs +4 -53
  299. data/sig/x_twitter_scraper/models/draft_list_response.rbs +4 -45
  300. data/sig/x_twitter_scraper/models/draw_list_response.rbs +4 -53
  301. data/sig/x_twitter_scraper/models/draw_retrieve_response.rbs +8 -124
  302. data/sig/x_twitter_scraper/models/draw_run_response.rbs +4 -36
  303. data/sig/x_twitter_scraper/models/event.rbs +4 -25
  304. data/sig/x_twitter_scraper/models/event_detail.rbs +4 -25
  305. data/sig/x_twitter_scraper/models/event_list_params.rbs +6 -27
  306. data/sig/x_twitter_scraper/models/event_list_response.rbs +4 -67
  307. data/sig/x_twitter_scraper/models/extraction_list_response.rbs +4 -109
  308. data/sig/x_twitter_scraper/models/extraction_run_response.rbs +5 -15
  309. data/sig/x_twitter_scraper/models/integration.rbs +9 -40
  310. data/sig/x_twitter_scraper/models/integration_create_params.rbs +8 -39
  311. data/sig/x_twitter_scraper/models/integration_list_deliveries_response.rbs +4 -78
  312. data/sig/x_twitter_scraper/models/integration_list_response.rbs +4 -114
  313. data/sig/x_twitter_scraper/models/integration_update_params.rbs +6 -27
  314. data/sig/x_twitter_scraper/models/monitor.rbs +4 -25
  315. data/sig/x_twitter_scraper/models/monitor_create_params.rbs +4 -25
  316. data/sig/x_twitter_scraper/models/monitor_create_response.rbs +4 -25
  317. data/sig/x_twitter_scraper/models/monitor_list_response.rbs +4 -70
  318. data/sig/x_twitter_scraper/models/monitor_update_params.rbs +6 -27
  319. data/sig/x_twitter_scraper/models/paginated_tweets.rbs +4 -113
  320. data/sig/x_twitter_scraper/models/paginated_users.rbs +4 -87
  321. data/sig/x_twitter_scraper/models/radar_retrieve_trending_topics_params.rbs +30 -5
  322. data/sig/x_twitter_scraper/models/radar_retrieve_trending_topics_response.rbs +4 -70
  323. data/sig/x_twitter_scraper/models/style_compare_response.rbs +8 -154
  324. data/sig/x_twitter_scraper/models/style_delete_params.rbs +4 -4
  325. data/sig/x_twitter_scraper/models/style_get_performance_params.rbs +4 -4
  326. data/sig/x_twitter_scraper/models/style_list_response.rbs +4 -38
  327. data/sig/x_twitter_scraper/models/style_retrieve_params.rbs +4 -4
  328. data/sig/x_twitter_scraper/models/style_update_params.rbs +4 -4
  329. data/sig/x_twitter_scraper/models/webhook.rbs +4 -25
  330. data/sig/x_twitter_scraper/models/webhook_create_params.rbs +4 -28
  331. data/sig/x_twitter_scraper/models/webhook_create_response.rbs +4 -25
  332. data/sig/x_twitter_scraper/models/webhook_list_deliveries_response.rbs +4 -68
  333. data/sig/x_twitter_scraper/models/webhook_list_response.rbs +4 -69
  334. data/sig/x_twitter_scraper/models/webhook_update_params.rbs +6 -27
  335. data/sig/x_twitter_scraper/models/x/account_bulk_retry_params.rbs +19 -0
  336. data/sig/x_twitter_scraper/models/x/account_bulk_retry_response.rbs +15 -0
  337. data/sig/x_twitter_scraper/models/x/account_list_response.rbs +4 -45
  338. data/sig/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rbs +34 -0
  339. data/sig/x_twitter_scraper/models/x/search_tweet.rbs +7 -0
  340. data/sig/x_twitter_scraper/models/x/tweet_delete_params.rbs +4 -4
  341. data/sig/x_twitter_scraper/models/x/tweet_detail.rbs +108 -3
  342. data/sig/x_twitter_scraper/models/x/tweet_retrieve_params.rbs +4 -5
  343. data/sig/x_twitter_scraper/models/x/tweet_retrieve_response.rbs +10 -108
  344. data/sig/x_twitter_scraper/models/x/tweets/like_create_params.rbs +4 -4
  345. data/sig/x_twitter_scraper/models/x/tweets/like_delete_params.rbs +4 -4
  346. data/sig/x_twitter_scraper/models/x/tweets/retweet_create_params.rbs +4 -4
  347. data/sig/x_twitter_scraper/models/x/tweets/retweet_delete_params.rbs +4 -4
  348. data/sig/x_twitter_scraper/models/x/user_retrieve_params.rbs +4 -5
  349. data/sig/x_twitter_scraper/models/x/users/follow_create_params.rbs +4 -4
  350. data/sig/x_twitter_scraper/models/x/users/follow_delete_all_params.rbs +4 -4
  351. data/sig/x_twitter_scraper/models/x_get_article_response.rbs +6 -45
  352. data/sig/x_twitter_scraper/models/x_get_trends_response.rbs +63 -0
  353. data/sig/x_twitter_scraper/resources/drafts.rbs +2 -2
  354. data/sig/x_twitter_scraper/resources/events.rbs +2 -2
  355. data/sig/x_twitter_scraper/resources/integrations.rbs +6 -6
  356. data/sig/x_twitter_scraper/resources/monitors.rbs +4 -4
  357. data/sig/x_twitter_scraper/resources/radar.rbs +1 -1
  358. data/sig/x_twitter_scraper/resources/styles.rbs +7 -7
  359. data/sig/x_twitter_scraper/resources/webhooks.rbs +3 -3
  360. data/sig/x_twitter_scraper/resources/x/accounts.rbs +5 -1
  361. data/sig/x_twitter_scraper/resources/x/bookmarks.rbs +1 -1
  362. data/sig/x_twitter_scraper/resources/x/communities/join.rbs +2 -2
  363. data/sig/x_twitter_scraper/resources/x/communities/tweets.rbs +7 -1
  364. data/sig/x_twitter_scraper/resources/x/communities.rbs +3 -3
  365. data/sig/x_twitter_scraper/resources/x/lists.rbs +3 -3
  366. data/sig/x_twitter_scraper/resources/x/tweets/like.rbs +2 -2
  367. data/sig/x_twitter_scraper/resources/x/tweets/retweet.rbs +2 -2
  368. data/sig/x_twitter_scraper/resources/x/tweets.rbs +9 -9
  369. data/sig/x_twitter_scraper/resources/x/users/follow.rbs +2 -2
  370. data/sig/x_twitter_scraper/resources/x/users.rbs +12 -12
  371. data/sig/x_twitter_scraper/resources/x.rbs +4 -2
  372. metadata +17 -88
  373. data/lib/x_twitter_scraper/models/draft_create_response.rb +0 -46
  374. data/lib/x_twitter_scraper/models/draft_retrieve_response.rb +0 -46
  375. data/lib/x_twitter_scraper/models/event_retrieve_response.rb +0 -74
  376. data/lib/x_twitter_scraper/models/integration_create_response.rb +0 -114
  377. data/lib/x_twitter_scraper/models/integration_retrieve_response.rb +0 -114
  378. data/lib/x_twitter_scraper/models/integration_update_response.rb +0 -114
  379. data/lib/x_twitter_scraper/models/monitor_retrieve_response.rb +0 -62
  380. data/lib/x_twitter_scraper/models/monitor_update_response.rb +0 -62
  381. data/lib/x_twitter_scraper/models/style_analyze_response.rb +0 -69
  382. data/lib/x_twitter_scraper/models/style_retrieve_response.rb +0 -69
  383. data/lib/x_twitter_scraper/models/style_update_response.rb +0 -69
  384. data/lib/x_twitter_scraper/models/webhook_update_response.rb +0 -56
  385. data/lib/x_twitter_scraper/models/x/account_retrieve_response.rb +0 -60
  386. data/lib/x_twitter_scraper/models/x/bookmark_list_response.rb +0 -124
  387. data/lib/x_twitter_scraper/models/x/communities/join_create_response.rb +0 -32
  388. data/lib/x_twitter_scraper/models/x/communities/join_delete_all_response.rb +0 -32
  389. data/lib/x_twitter_scraper/models/x/tweet_get_favoriters_response.rb +0 -101
  390. data/lib/x_twitter_scraper/models/x/tweet_get_quotes_response.rb +0 -124
  391. data/lib/x_twitter_scraper/models/x/tweet_get_replies_response.rb +0 -124
  392. data/lib/x_twitter_scraper/models/x/tweet_get_retweeters_response.rb +0 -101
  393. data/lib/x_twitter_scraper/models/x/tweet_get_thread_response.rb +0 -124
  394. data/lib/x_twitter_scraper/models/x/tweet_search_response.rb +0 -124
  395. data/lib/x_twitter_scraper/models/x/user_retrieve_followers_you_know_response.rb +0 -101
  396. data/lib/x_twitter_scraper/models/x/user_retrieve_likes_response.rb +0 -124
  397. data/lib/x_twitter_scraper/models/x/user_retrieve_media_response.rb +0 -124
  398. data/lib/x_twitter_scraper/models/x/user_retrieve_response.rb +0 -78
  399. data/lib/x_twitter_scraper/models/x/user_retrieve_tweets_response.rb +0 -124
  400. data/lib/x_twitter_scraper/models/x_get_home_timeline_response.rb +0 -122
  401. data/rbi/x_twitter_scraper/models/draft_create_response.rbi +0 -67
  402. data/rbi/x_twitter_scraper/models/draft_retrieve_response.rbi +0 -67
  403. data/rbi/x_twitter_scraper/models/event_retrieve_response.rbi +0 -135
  404. data/rbi/x_twitter_scraper/models/integration_create_response.rbi +0 -215
  405. data/rbi/x_twitter_scraper/models/integration_retrieve_response.rbi +0 -215
  406. data/rbi/x_twitter_scraper/models/integration_update_response.rbi +0 -215
  407. data/rbi/x_twitter_scraper/models/monitor_retrieve_response.rbi +0 -134
  408. data/rbi/x_twitter_scraper/models/monitor_update_response.rbi +0 -134
  409. data/rbi/x_twitter_scraper/models/style_analyze_response.rbi +0 -120
  410. data/rbi/x_twitter_scraper/models/style_retrieve_response.rbi +0 -120
  411. data/rbi/x_twitter_scraper/models/style_update_response.rbi +0 -120
  412. data/rbi/x_twitter_scraper/models/webhook_update_response.rbi +0 -122
  413. data/rbi/x_twitter_scraper/models/x/account_retrieve_response.rbi +0 -91
  414. data/rbi/x_twitter_scraper/models/x/bookmark_list_response.rbi +0 -231
  415. data/rbi/x_twitter_scraper/models/x/communities/join_create_response.rbi +0 -50
  416. data/rbi/x_twitter_scraper/models/x/communities/join_delete_all_response.rbi +0 -50
  417. data/rbi/x_twitter_scraper/models/x/tweet_get_favoriters_response.rbi +0 -177
  418. data/rbi/x_twitter_scraper/models/x/tweet_get_quotes_response.rbi +0 -231
  419. data/rbi/x_twitter_scraper/models/x/tweet_get_replies_response.rbi +0 -231
  420. data/rbi/x_twitter_scraper/models/x/tweet_get_retweeters_response.rbi +0 -177
  421. data/rbi/x_twitter_scraper/models/x/tweet_get_thread_response.rbi +0 -231
  422. data/rbi/x_twitter_scraper/models/x/tweet_search_response.rbi +0 -229
  423. data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_you_know_response.rbi +0 -177
  424. data/rbi/x_twitter_scraper/models/x/user_retrieve_likes_response.rbi +0 -233
  425. data/rbi/x_twitter_scraper/models/x/user_retrieve_media_response.rbi +0 -233
  426. data/rbi/x_twitter_scraper/models/x/user_retrieve_response.rbi +0 -124
  427. data/rbi/x_twitter_scraper/models/x/user_retrieve_tweets_response.rbi +0 -233
  428. data/rbi/x_twitter_scraper/models/x_get_home_timeline_response.rbi +0 -227
  429. data/sig/x_twitter_scraper/models/draft_create_response.rbs +0 -49
  430. data/sig/x_twitter_scraper/models/draft_retrieve_response.rbs +0 -49
  431. data/sig/x_twitter_scraper/models/event_retrieve_response.rbs +0 -73
  432. data/sig/x_twitter_scraper/models/integration_create_response.rbs +0 -109
  433. data/sig/x_twitter_scraper/models/integration_retrieve_response.rbs +0 -109
  434. data/sig/x_twitter_scraper/models/integration_update_response.rbs +0 -109
  435. data/sig/x_twitter_scraper/models/monitor_retrieve_response.rbs +0 -66
  436. data/sig/x_twitter_scraper/models/monitor_update_response.rbs +0 -66
  437. data/sig/x_twitter_scraper/models/style_analyze_response.rbs +0 -76
  438. data/sig/x_twitter_scraper/models/style_retrieve_response.rbs +0 -76
  439. data/sig/x_twitter_scraper/models/style_update_response.rbs +0 -76
  440. data/sig/x_twitter_scraper/models/webhook_update_response.rbs +0 -61
  441. data/sig/x_twitter_scraper/models/x/account_retrieve_response.rbs +0 -63
  442. data/sig/x_twitter_scraper/models/x/bookmark_list_response.rbs +0 -141
  443. data/sig/x_twitter_scraper/models/x/communities/join_create_response.rbs +0 -30
  444. data/sig/x_twitter_scraper/models/x/communities/join_delete_all_response.rbs +0 -30
  445. data/sig/x_twitter_scraper/models/x/tweet_get_favoriters_response.rbs +0 -115
  446. data/sig/x_twitter_scraper/models/x/tweet_get_quotes_response.rbs +0 -141
  447. data/sig/x_twitter_scraper/models/x/tweet_get_replies_response.rbs +0 -141
  448. data/sig/x_twitter_scraper/models/x/tweet_get_retweeters_response.rbs +0 -115
  449. data/sig/x_twitter_scraper/models/x/tweet_get_thread_response.rbs +0 -141
  450. data/sig/x_twitter_scraper/models/x/tweet_search_response.rbs +0 -141
  451. data/sig/x_twitter_scraper/models/x/user_retrieve_followers_you_know_response.rbs +0 -115
  452. data/sig/x_twitter_scraper/models/x/user_retrieve_likes_response.rbs +0 -141
  453. data/sig/x_twitter_scraper/models/x/user_retrieve_media_response.rbs +0 -141
  454. data/sig/x_twitter_scraper/models/x/user_retrieve_response.rbs +0 -88
  455. data/sig/x_twitter_scraper/models/x/user_retrieve_tweets_response.rbs +0 -141
  456. data/sig/x_twitter_scraper/models/x_get_home_timeline_response.rbs +0 -139
@@ -11,9 +11,7 @@ module XTwitterScraper
11
11
  )
12
12
  end
13
13
 
14
- sig do
15
- returns(T::Array[XTwitterScraper::Models::MonitorListResponse::Monitor])
16
- end
14
+ sig { returns(T::Array[XTwitterScraper::Monitor]) }
17
15
  attr_accessor :monitors
18
16
 
19
17
  sig { returns(Integer) }
@@ -21,10 +19,7 @@ module XTwitterScraper
21
19
 
22
20
  sig do
23
21
  params(
24
- monitors:
25
- T::Array[
26
- XTwitterScraper::Models::MonitorListResponse::Monitor::OrHash
27
- ],
22
+ monitors: T::Array[XTwitterScraper::Monitor::OrHash],
28
23
  total: Integer
29
24
  ).returns(T.attached_class)
30
25
  end
@@ -33,144 +28,11 @@ module XTwitterScraper
33
28
 
34
29
  sig do
35
30
  override.returns(
36
- {
37
- monitors:
38
- T::Array[XTwitterScraper::Models::MonitorListResponse::Monitor],
39
- total: Integer
40
- }
31
+ { monitors: T::Array[XTwitterScraper::Monitor], total: Integer }
41
32
  )
42
33
  end
43
34
  def to_hash
44
35
  end
45
-
46
- class Monitor < XTwitterScraper::Internal::Type::BaseModel
47
- OrHash =
48
- T.type_alias do
49
- T.any(
50
- XTwitterScraper::Models::MonitorListResponse::Monitor,
51
- XTwitterScraper::Internal::AnyHash
52
- )
53
- end
54
-
55
- sig { returns(String) }
56
- attr_accessor :id
57
-
58
- sig { returns(Time) }
59
- attr_accessor :created_at
60
-
61
- sig do
62
- returns(
63
- T::Array[
64
- XTwitterScraper::Models::MonitorListResponse::Monitor::EventType::TaggedSymbol
65
- ]
66
- )
67
- end
68
- attr_accessor :event_types
69
-
70
- sig { returns(T::Boolean) }
71
- attr_accessor :is_active
72
-
73
- sig { returns(String) }
74
- attr_accessor :username
75
-
76
- sig { returns(String) }
77
- attr_accessor :x_user_id
78
-
79
- sig do
80
- params(
81
- id: String,
82
- created_at: Time,
83
- event_types:
84
- T::Array[
85
- XTwitterScraper::Models::MonitorListResponse::Monitor::EventType::OrSymbol
86
- ],
87
- is_active: T::Boolean,
88
- username: String,
89
- x_user_id: String
90
- ).returns(T.attached_class)
91
- end
92
- def self.new(
93
- id:,
94
- created_at:,
95
- event_types:,
96
- is_active:,
97
- username:,
98
- x_user_id:
99
- )
100
- end
101
-
102
- sig do
103
- override.returns(
104
- {
105
- id: String,
106
- created_at: Time,
107
- event_types:
108
- T::Array[
109
- XTwitterScraper::Models::MonitorListResponse::Monitor::EventType::TaggedSymbol
110
- ],
111
- is_active: T::Boolean,
112
- username: String,
113
- x_user_id: String
114
- }
115
- )
116
- end
117
- def to_hash
118
- end
119
-
120
- module EventType
121
- extend XTwitterScraper::Internal::Type::Enum
122
-
123
- TaggedSymbol =
124
- T.type_alias do
125
- T.all(
126
- Symbol,
127
- XTwitterScraper::Models::MonitorListResponse::Monitor::EventType
128
- )
129
- end
130
- OrSymbol = T.type_alias { T.any(Symbol, String) }
131
-
132
- TWEET_NEW =
133
- T.let(
134
- :"tweet.new",
135
- XTwitterScraper::Models::MonitorListResponse::Monitor::EventType::TaggedSymbol
136
- )
137
- TWEET_REPLY =
138
- T.let(
139
- :"tweet.reply",
140
- XTwitterScraper::Models::MonitorListResponse::Monitor::EventType::TaggedSymbol
141
- )
142
- TWEET_RETWEET =
143
- T.let(
144
- :"tweet.retweet",
145
- XTwitterScraper::Models::MonitorListResponse::Monitor::EventType::TaggedSymbol
146
- )
147
- TWEET_QUOTE =
148
- T.let(
149
- :"tweet.quote",
150
- XTwitterScraper::Models::MonitorListResponse::Monitor::EventType::TaggedSymbol
151
- )
152
- FOLLOWER_GAINED =
153
- T.let(
154
- :"follower.gained",
155
- XTwitterScraper::Models::MonitorListResponse::Monitor::EventType::TaggedSymbol
156
- )
157
- FOLLOWER_LOST =
158
- T.let(
159
- :"follower.lost",
160
- XTwitterScraper::Models::MonitorListResponse::Monitor::EventType::TaggedSymbol
161
- )
162
-
163
- sig do
164
- override.returns(
165
- T::Array[
166
- XTwitterScraper::Models::MonitorListResponse::Monitor::EventType::TaggedSymbol
167
- ]
168
- )
169
- end
170
- def self.values
171
- end
172
- end
173
- end
174
36
  end
175
37
  end
176
38
  end
@@ -17,20 +17,12 @@ module XTwitterScraper
17
17
  sig { returns(String) }
18
18
  attr_accessor :id
19
19
 
20
- sig do
21
- returns(
22
- T.nilable(
23
- T::Array[XTwitterScraper::MonitorUpdateParams::EventType::OrSymbol]
24
- )
25
- )
26
- end
20
+ # Array of event types to subscribe to.
21
+ sig { returns(T.nilable(T::Array[XTwitterScraper::EventType::OrSymbol])) }
27
22
  attr_reader :event_types
28
23
 
29
24
  sig do
30
- params(
31
- event_types:
32
- T::Array[XTwitterScraper::MonitorUpdateParams::EventType::OrSymbol]
33
- ).void
25
+ params(event_types: T::Array[XTwitterScraper::EventType::OrSymbol]).void
34
26
  end
35
27
  attr_writer :event_types
36
28
 
@@ -43,23 +35,25 @@ module XTwitterScraper
43
35
  sig do
44
36
  params(
45
37
  id: String,
46
- event_types:
47
- T::Array[XTwitterScraper::MonitorUpdateParams::EventType::OrSymbol],
38
+ event_types: T::Array[XTwitterScraper::EventType::OrSymbol],
48
39
  is_active: T::Boolean,
49
40
  request_options: XTwitterScraper::RequestOptions::OrHash
50
41
  ).returns(T.attached_class)
51
42
  end
52
- def self.new(id:, event_types: nil, is_active: nil, request_options: {})
43
+ def self.new(
44
+ id:,
45
+ # Array of event types to subscribe to.
46
+ event_types: nil,
47
+ is_active: nil,
48
+ request_options: {}
49
+ )
53
50
  end
54
51
 
55
52
  sig do
56
53
  override.returns(
57
54
  {
58
55
  id: String,
59
- event_types:
60
- T::Array[
61
- XTwitterScraper::MonitorUpdateParams::EventType::OrSymbol
62
- ],
56
+ event_types: T::Array[XTwitterScraper::EventType::OrSymbol],
63
57
  is_active: T::Boolean,
64
58
  request_options: XTwitterScraper::RequestOptions
65
59
  }
@@ -67,57 +61,6 @@ module XTwitterScraper
67
61
  end
68
62
  def to_hash
69
63
  end
70
-
71
- module EventType
72
- extend XTwitterScraper::Internal::Type::Enum
73
-
74
- TaggedSymbol =
75
- T.type_alias do
76
- T.all(Symbol, XTwitterScraper::MonitorUpdateParams::EventType)
77
- end
78
- OrSymbol = T.type_alias { T.any(Symbol, String) }
79
-
80
- TWEET_NEW =
81
- T.let(
82
- :"tweet.new",
83
- XTwitterScraper::MonitorUpdateParams::EventType::TaggedSymbol
84
- )
85
- TWEET_REPLY =
86
- T.let(
87
- :"tweet.reply",
88
- XTwitterScraper::MonitorUpdateParams::EventType::TaggedSymbol
89
- )
90
- TWEET_RETWEET =
91
- T.let(
92
- :"tweet.retweet",
93
- XTwitterScraper::MonitorUpdateParams::EventType::TaggedSymbol
94
- )
95
- TWEET_QUOTE =
96
- T.let(
97
- :"tweet.quote",
98
- XTwitterScraper::MonitorUpdateParams::EventType::TaggedSymbol
99
- )
100
- FOLLOWER_GAINED =
101
- T.let(
102
- :"follower.gained",
103
- XTwitterScraper::MonitorUpdateParams::EventType::TaggedSymbol
104
- )
105
- FOLLOWER_LOST =
106
- T.let(
107
- :"follower.lost",
108
- XTwitterScraper::MonitorUpdateParams::EventType::TaggedSymbol
109
- )
110
-
111
- sig do
112
- override.returns(
113
- T::Array[
114
- XTwitterScraper::MonitorUpdateParams::EventType::TaggedSymbol
115
- ]
116
- )
117
- end
118
- def self.values
119
- end
120
- end
121
64
  end
122
65
  end
123
66
  end
@@ -17,14 +17,15 @@ module XTwitterScraper
17
17
  sig { returns(String) }
18
18
  attr_accessor :next_cursor
19
19
 
20
- sig { returns(T::Array[XTwitterScraper::PaginatedTweets::Tweet]) }
20
+ sig { returns(T::Array[XTwitterScraper::X::SearchTweet]) }
21
21
  attr_accessor :tweets
22
22
 
23
+ # Paginated list of tweets with cursor-based navigation.
23
24
  sig do
24
25
  params(
25
26
  has_next_page: T::Boolean,
26
27
  next_cursor: String,
27
- tweets: T::Array[XTwitterScraper::PaginatedTweets::Tweet::OrHash]
28
+ tweets: T::Array[XTwitterScraper::X::SearchTweet::OrHash]
28
29
  ).returns(T.attached_class)
29
30
  end
30
31
  def self.new(has_next_page:, next_cursor:, tweets:)
@@ -35,178 +36,12 @@ module XTwitterScraper
35
36
  {
36
37
  has_next_page: T::Boolean,
37
38
  next_cursor: String,
38
- tweets: T::Array[XTwitterScraper::PaginatedTweets::Tweet]
39
+ tweets: T::Array[XTwitterScraper::X::SearchTweet]
39
40
  }
40
41
  )
41
42
  end
42
43
  def to_hash
43
44
  end
44
-
45
- class Tweet < XTwitterScraper::Internal::Type::BaseModel
46
- OrHash =
47
- T.type_alias do
48
- T.any(
49
- XTwitterScraper::PaginatedTweets::Tweet,
50
- XTwitterScraper::Internal::AnyHash
51
- )
52
- end
53
-
54
- sig { returns(String) }
55
- attr_accessor :id
56
-
57
- sig { returns(String) }
58
- attr_accessor :text
59
-
60
- sig do
61
- returns(T.nilable(XTwitterScraper::PaginatedTweets::Tweet::Author))
62
- end
63
- attr_reader :author
64
-
65
- sig do
66
- params(
67
- author: XTwitterScraper::PaginatedTweets::Tweet::Author::OrHash
68
- ).void
69
- end
70
- attr_writer :author
71
-
72
- sig { returns(T.nilable(Integer)) }
73
- attr_reader :bookmark_count
74
-
75
- sig { params(bookmark_count: Integer).void }
76
- attr_writer :bookmark_count
77
-
78
- sig { returns(T.nilable(String)) }
79
- attr_reader :created_at
80
-
81
- sig { params(created_at: String).void }
82
- attr_writer :created_at
83
-
84
- sig { returns(T.nilable(Integer)) }
85
- attr_reader :like_count
86
-
87
- sig { params(like_count: Integer).void }
88
- attr_writer :like_count
89
-
90
- sig { returns(T.nilable(Integer)) }
91
- attr_reader :quote_count
92
-
93
- sig { params(quote_count: Integer).void }
94
- attr_writer :quote_count
95
-
96
- sig { returns(T.nilable(Integer)) }
97
- attr_reader :reply_count
98
-
99
- sig { params(reply_count: Integer).void }
100
- attr_writer :reply_count
101
-
102
- sig { returns(T.nilable(Integer)) }
103
- attr_reader :retweet_count
104
-
105
- sig { params(retweet_count: Integer).void }
106
- attr_writer :retweet_count
107
-
108
- sig { returns(T.nilable(Integer)) }
109
- attr_reader :view_count
110
-
111
- sig { params(view_count: Integer).void }
112
- attr_writer :view_count
113
-
114
- sig do
115
- params(
116
- id: String,
117
- text: String,
118
- author: XTwitterScraper::PaginatedTweets::Tweet::Author::OrHash,
119
- bookmark_count: Integer,
120
- created_at: String,
121
- like_count: Integer,
122
- quote_count: Integer,
123
- reply_count: Integer,
124
- retweet_count: Integer,
125
- view_count: Integer
126
- ).returns(T.attached_class)
127
- end
128
- def self.new(
129
- id:,
130
- text:,
131
- author: nil,
132
- bookmark_count: nil,
133
- created_at: nil,
134
- like_count: nil,
135
- quote_count: nil,
136
- reply_count: nil,
137
- retweet_count: nil,
138
- view_count: nil
139
- )
140
- end
141
-
142
- sig do
143
- override.returns(
144
- {
145
- id: String,
146
- text: String,
147
- author: XTwitterScraper::PaginatedTweets::Tweet::Author,
148
- bookmark_count: Integer,
149
- created_at: String,
150
- like_count: Integer,
151
- quote_count: Integer,
152
- reply_count: Integer,
153
- retweet_count: Integer,
154
- view_count: Integer
155
- }
156
- )
157
- end
158
- def to_hash
159
- end
160
-
161
- class Author < XTwitterScraper::Internal::Type::BaseModel
162
- OrHash =
163
- T.type_alias do
164
- T.any(
165
- XTwitterScraper::PaginatedTweets::Tweet::Author,
166
- XTwitterScraper::Internal::AnyHash
167
- )
168
- end
169
-
170
- sig { returns(String) }
171
- attr_accessor :id
172
-
173
- sig { returns(String) }
174
- attr_accessor :name
175
-
176
- sig { returns(String) }
177
- attr_accessor :username
178
-
179
- sig { returns(T.nilable(T::Boolean)) }
180
- attr_reader :verified
181
-
182
- sig { params(verified: T::Boolean).void }
183
- attr_writer :verified
184
-
185
- sig do
186
- params(
187
- id: String,
188
- name: String,
189
- username: String,
190
- verified: T::Boolean
191
- ).returns(T.attached_class)
192
- end
193
- def self.new(id:, name:, username:, verified: nil)
194
- end
195
-
196
- sig do
197
- override.returns(
198
- {
199
- id: String,
200
- name: String,
201
- username: String,
202
- verified: T::Boolean
203
- }
204
- )
205
- end
206
- def to_hash
207
- end
208
- end
209
- end
210
45
  end
211
46
  end
212
47
  end
@@ -17,14 +17,15 @@ module XTwitterScraper
17
17
  sig { returns(String) }
18
18
  attr_accessor :next_cursor
19
19
 
20
- sig { returns(T::Array[XTwitterScraper::PaginatedUsers::User]) }
20
+ sig { returns(T::Array[XTwitterScraper::X::UserProfile]) }
21
21
  attr_accessor :users
22
22
 
23
+ # Paginated list of user profiles with cursor-based navigation.
23
24
  sig do
24
25
  params(
25
26
  has_next_page: T::Boolean,
26
27
  next_cursor: String,
27
- users: T::Array[XTwitterScraper::PaginatedUsers::User::OrHash]
28
+ users: T::Array[XTwitterScraper::X::UserProfile::OrHash]
28
29
  ).returns(T.attached_class)
29
30
  end
30
31
  def self.new(has_next_page:, next_cursor:, users:)
@@ -35,129 +36,12 @@ module XTwitterScraper
35
36
  {
36
37
  has_next_page: T::Boolean,
37
38
  next_cursor: String,
38
- users: T::Array[XTwitterScraper::PaginatedUsers::User]
39
+ users: T::Array[XTwitterScraper::X::UserProfile]
39
40
  }
40
41
  )
41
42
  end
42
43
  def to_hash
43
44
  end
44
-
45
- class User < XTwitterScraper::Internal::Type::BaseModel
46
- OrHash =
47
- T.type_alias do
48
- T.any(
49
- XTwitterScraper::PaginatedUsers::User,
50
- XTwitterScraper::Internal::AnyHash
51
- )
52
- end
53
-
54
- sig { returns(String) }
55
- attr_accessor :id
56
-
57
- sig { returns(String) }
58
- attr_accessor :name
59
-
60
- sig { returns(String) }
61
- attr_accessor :username
62
-
63
- sig { returns(T.nilable(String)) }
64
- attr_reader :created_at
65
-
66
- sig { params(created_at: String).void }
67
- attr_writer :created_at
68
-
69
- sig { returns(T.nilable(String)) }
70
- attr_reader :description
71
-
72
- sig { params(description: String).void }
73
- attr_writer :description
74
-
75
- sig { returns(T.nilable(Integer)) }
76
- attr_reader :followers
77
-
78
- sig { params(followers: Integer).void }
79
- attr_writer :followers
80
-
81
- sig { returns(T.nilable(Integer)) }
82
- attr_reader :following
83
-
84
- sig { params(following: Integer).void }
85
- attr_writer :following
86
-
87
- sig { returns(T.nilable(String)) }
88
- attr_reader :location
89
-
90
- sig { params(location: String).void }
91
- attr_writer :location
92
-
93
- sig { returns(T.nilable(String)) }
94
- attr_reader :profile_picture
95
-
96
- sig { params(profile_picture: String).void }
97
- attr_writer :profile_picture
98
-
99
- sig { returns(T.nilable(Integer)) }
100
- attr_reader :statuses_count
101
-
102
- sig { params(statuses_count: Integer).void }
103
- attr_writer :statuses_count
104
-
105
- sig { returns(T.nilable(T::Boolean)) }
106
- attr_reader :verified
107
-
108
- sig { params(verified: T::Boolean).void }
109
- attr_writer :verified
110
-
111
- sig do
112
- params(
113
- id: String,
114
- name: String,
115
- username: String,
116
- created_at: String,
117
- description: String,
118
- followers: Integer,
119
- following: Integer,
120
- location: String,
121
- profile_picture: String,
122
- statuses_count: Integer,
123
- verified: T::Boolean
124
- ).returns(T.attached_class)
125
- end
126
- def self.new(
127
- id:,
128
- name:,
129
- username:,
130
- created_at: nil,
131
- description: nil,
132
- followers: nil,
133
- following: nil,
134
- location: nil,
135
- profile_picture: nil,
136
- statuses_count: nil,
137
- verified: nil
138
- )
139
- end
140
-
141
- sig do
142
- override.returns(
143
- {
144
- id: String,
145
- name: String,
146
- username: String,
147
- created_at: String,
148
- description: String,
149
- followers: Integer,
150
- following: Integer,
151
- location: String,
152
- profile_picture: String,
153
- statuses_count: Integer,
154
- verified: T::Boolean
155
- }
156
- )
157
- end
158
- def to_hash
159
- end
160
- end
161
45
  end
162
46
  end
163
47
  end
@@ -44,6 +44,7 @@ module XTwitterScraper
44
44
  sig { params(url: String).void }
45
45
  attr_writer :url
46
46
 
47
+ # Trending topic with score, category, source, and region.
47
48
  sig do
48
49
  params(
49
50
  category: String,