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,204 +11,39 @@ module XTwitterScraper
11
11
  )
12
12
  end
13
13
 
14
- sig { returns(XTwitterScraper::Models::DrawRetrieveResponse::Draw) }
14
+ # Full giveaway draw with tweet metrics, entries, and timing.
15
+ sig { returns(XTwitterScraper::DrawDetail) }
15
16
  attr_reader :draw
16
17
 
17
- sig do
18
- params(
19
- draw: XTwitterScraper::Models::DrawRetrieveResponse::Draw::OrHash
20
- ).void
21
- end
18
+ sig { params(draw: XTwitterScraper::DrawDetail::OrHash).void }
22
19
  attr_writer :draw
23
20
 
24
- sig do
25
- returns(T::Array[XTwitterScraper::Models::DrawRetrieveResponse::Winner])
26
- end
21
+ sig { returns(T::Array[XTwitterScraper::Winner]) }
27
22
  attr_accessor :winners
28
23
 
29
24
  sig do
30
25
  params(
31
- draw: XTwitterScraper::Models::DrawRetrieveResponse::Draw::OrHash,
32
- winners:
33
- T::Array[
34
- XTwitterScraper::Models::DrawRetrieveResponse::Winner::OrHash
35
- ]
26
+ draw: XTwitterScraper::DrawDetail::OrHash,
27
+ winners: T::Array[XTwitterScraper::Winner::OrHash]
36
28
  ).returns(T.attached_class)
37
29
  end
38
- def self.new(draw:, winners:)
30
+ def self.new(
31
+ # Full giveaway draw with tweet metrics, entries, and timing.
32
+ draw:,
33
+ winners:
34
+ )
39
35
  end
40
36
 
41
37
  sig do
42
38
  override.returns(
43
39
  {
44
- draw: XTwitterScraper::Models::DrawRetrieveResponse::Draw,
45
- winners:
46
- T::Array[XTwitterScraper::Models::DrawRetrieveResponse::Winner]
40
+ draw: XTwitterScraper::DrawDetail,
41
+ winners: T::Array[XTwitterScraper::Winner]
47
42
  }
48
43
  )
49
44
  end
50
45
  def to_hash
51
46
  end
52
-
53
- class Draw < XTwitterScraper::Internal::Type::BaseModel
54
- OrHash =
55
- T.type_alias do
56
- T.any(
57
- XTwitterScraper::Models::DrawRetrieveResponse::Draw,
58
- XTwitterScraper::Internal::AnyHash
59
- )
60
- end
61
-
62
- sig { returns(String) }
63
- attr_accessor :id
64
-
65
- sig { returns(Time) }
66
- attr_accessor :created_at
67
-
68
- sig { returns(String) }
69
- attr_accessor :status
70
-
71
- sig { returns(Integer) }
72
- attr_accessor :total_entries
73
-
74
- sig { returns(String) }
75
- attr_accessor :tweet_author_username
76
-
77
- sig { returns(String) }
78
- attr_accessor :tweet_id
79
-
80
- sig { returns(Integer) }
81
- attr_accessor :tweet_like_count
82
-
83
- sig { returns(Integer) }
84
- attr_accessor :tweet_quote_count
85
-
86
- sig { returns(Integer) }
87
- attr_accessor :tweet_reply_count
88
-
89
- sig { returns(Integer) }
90
- attr_accessor :tweet_retweet_count
91
-
92
- sig { returns(String) }
93
- attr_accessor :tweet_text
94
-
95
- sig { returns(String) }
96
- attr_accessor :tweet_url
97
-
98
- sig { returns(Integer) }
99
- attr_accessor :valid_entries
100
-
101
- sig { returns(T.nilable(Time)) }
102
- attr_reader :drawn_at
103
-
104
- sig { params(drawn_at: Time).void }
105
- attr_writer :drawn_at
106
-
107
- sig do
108
- params(
109
- id: String,
110
- created_at: Time,
111
- status: String,
112
- total_entries: Integer,
113
- tweet_author_username: String,
114
- tweet_id: String,
115
- tweet_like_count: Integer,
116
- tweet_quote_count: Integer,
117
- tweet_reply_count: Integer,
118
- tweet_retweet_count: Integer,
119
- tweet_text: String,
120
- tweet_url: String,
121
- valid_entries: Integer,
122
- drawn_at: Time
123
- ).returns(T.attached_class)
124
- end
125
- def self.new(
126
- id:,
127
- created_at:,
128
- status:,
129
- total_entries:,
130
- tweet_author_username:,
131
- tweet_id:,
132
- tweet_like_count:,
133
- tweet_quote_count:,
134
- tweet_reply_count:,
135
- tweet_retweet_count:,
136
- tweet_text:,
137
- tweet_url:,
138
- valid_entries:,
139
- drawn_at: nil
140
- )
141
- end
142
-
143
- sig do
144
- override.returns(
145
- {
146
- id: String,
147
- created_at: Time,
148
- status: String,
149
- total_entries: Integer,
150
- tweet_author_username: String,
151
- tweet_id: String,
152
- tweet_like_count: Integer,
153
- tweet_quote_count: Integer,
154
- tweet_reply_count: Integer,
155
- tweet_retweet_count: Integer,
156
- tweet_text: String,
157
- tweet_url: String,
158
- valid_entries: Integer,
159
- drawn_at: Time
160
- }
161
- )
162
- end
163
- def to_hash
164
- end
165
- end
166
-
167
- class Winner < XTwitterScraper::Internal::Type::BaseModel
168
- OrHash =
169
- T.type_alias do
170
- T.any(
171
- XTwitterScraper::Models::DrawRetrieveResponse::Winner,
172
- XTwitterScraper::Internal::AnyHash
173
- )
174
- end
175
-
176
- sig { returns(String) }
177
- attr_accessor :author_username
178
-
179
- sig { returns(T::Boolean) }
180
- attr_accessor :is_backup
181
-
182
- sig { returns(Integer) }
183
- attr_accessor :position
184
-
185
- sig { returns(String) }
186
- attr_accessor :tweet_id
187
-
188
- sig do
189
- params(
190
- author_username: String,
191
- is_backup: T::Boolean,
192
- position: Integer,
193
- tweet_id: String
194
- ).returns(T.attached_class)
195
- end
196
- def self.new(author_username:, is_backup:, position:, tweet_id:)
197
- end
198
-
199
- sig do
200
- override.returns(
201
- {
202
- author_username: String,
203
- is_backup: T::Boolean,
204
- position: Integer,
205
- tweet_id: String
206
- }
207
- )
208
- end
209
- def to_hash
210
- end
211
- end
212
47
  end
213
48
  end
214
49
  end
@@ -23,9 +23,7 @@ module XTwitterScraper
23
23
  sig { returns(Integer) }
24
24
  attr_accessor :valid_entries
25
25
 
26
- sig do
27
- returns(T::Array[XTwitterScraper::Models::DrawRunResponse::Winner])
28
- end
26
+ sig { returns(T::Array[XTwitterScraper::Winner]) }
29
27
  attr_accessor :winners
30
28
 
31
29
  sig do
@@ -34,8 +32,7 @@ module XTwitterScraper
34
32
  total_entries: Integer,
35
33
  tweet_id: String,
36
34
  valid_entries: Integer,
37
- winners:
38
- T::Array[XTwitterScraper::Models::DrawRunResponse::Winner::OrHash]
35
+ winners: T::Array[XTwitterScraper::Winner::OrHash]
39
36
  ).returns(T.attached_class)
40
37
  end
41
38
  def self.new(id:, total_entries:, tweet_id:, valid_entries:, winners:)
@@ -48,58 +45,12 @@ module XTwitterScraper
48
45
  total_entries: Integer,
49
46
  tweet_id: String,
50
47
  valid_entries: Integer,
51
- winners: T::Array[XTwitterScraper::Models::DrawRunResponse::Winner]
48
+ winners: T::Array[XTwitterScraper::Winner]
52
49
  }
53
50
  )
54
51
  end
55
52
  def to_hash
56
53
  end
57
-
58
- class Winner < XTwitterScraper::Internal::Type::BaseModel
59
- OrHash =
60
- T.type_alias do
61
- T.any(
62
- XTwitterScraper::Models::DrawRunResponse::Winner,
63
- XTwitterScraper::Internal::AnyHash
64
- )
65
- end
66
-
67
- sig { returns(String) }
68
- attr_accessor :author_username
69
-
70
- sig { returns(T::Boolean) }
71
- attr_accessor :is_backup
72
-
73
- sig { returns(Integer) }
74
- attr_accessor :position
75
-
76
- sig { returns(String) }
77
- attr_accessor :tweet_id
78
-
79
- sig do
80
- params(
81
- author_username: String,
82
- is_backup: T::Boolean,
83
- position: Integer,
84
- tweet_id: String
85
- ).returns(T.attached_class)
86
- end
87
- def self.new(author_username:, is_backup:, position:, tweet_id:)
88
- end
89
-
90
- sig do
91
- override.returns(
92
- {
93
- author_username: String,
94
- is_backup: T::Boolean,
95
- position: Integer,
96
- tweet_id: String
97
- }
98
- )
99
- end
100
- def to_hash
101
- end
102
- end
103
54
  end
104
55
  end
105
56
  end
@@ -11,6 +11,7 @@ module XTwitterScraper
11
11
  sig { returns(XTwitterScraper::Error::Error::OrSymbol) }
12
12
  attr_accessor :error
13
13
 
14
+ # Error response containing a machine-readable error code.
14
15
  sig do
15
16
  params(error: XTwitterScraper::Error::Error::OrSymbol).returns(
16
17
  T.attached_class
@@ -20,23 +20,33 @@ module XTwitterScraper
20
20
  sig { returns(Time) }
21
21
  attr_accessor :occurred_at
22
22
 
23
- sig { returns(XTwitterScraper::Event::Type::OrSymbol) }
23
+ # Type of monitor event fired when account activity occurs.
24
+ sig { returns(XTwitterScraper::EventType::TaggedSymbol) }
24
25
  attr_accessor :type
25
26
 
26
27
  sig { returns(String) }
27
28
  attr_accessor :username
28
29
 
30
+ # Monitor event summary with type, username, and occurrence time.
29
31
  sig do
30
32
  params(
31
33
  id: String,
32
34
  data: T::Hash[Symbol, T.anything],
33
35
  monitor_id: String,
34
36
  occurred_at: Time,
35
- type: XTwitterScraper::Event::Type::OrSymbol,
37
+ type: XTwitterScraper::EventType::OrSymbol,
36
38
  username: String
37
39
  ).returns(T.attached_class)
38
40
  end
39
- def self.new(id:, data:, monitor_id:, occurred_at:, type:, username:)
41
+ def self.new(
42
+ id:,
43
+ data:,
44
+ monitor_id:,
45
+ occurred_at:,
46
+ # Type of monitor event fired when account activity occurs.
47
+ type:,
48
+ username:
49
+ )
40
50
  end
41
51
 
42
52
  sig do
@@ -46,40 +56,13 @@ module XTwitterScraper
46
56
  data: T::Hash[Symbol, T.anything],
47
57
  monitor_id: String,
48
58
  occurred_at: Time,
49
- type: XTwitterScraper::Event::Type::OrSymbol,
59
+ type: XTwitterScraper::EventType::TaggedSymbol,
50
60
  username: String
51
61
  }
52
62
  )
53
63
  end
54
64
  def to_hash
55
65
  end
56
-
57
- module Type
58
- extend XTwitterScraper::Internal::Type::Enum
59
-
60
- TaggedSymbol =
61
- T.type_alias { T.all(Symbol, XTwitterScraper::Event::Type) }
62
- OrSymbol = T.type_alias { T.any(Symbol, String) }
63
-
64
- TWEET_NEW =
65
- T.let(:"tweet.new", XTwitterScraper::Event::Type::TaggedSymbol)
66
- TWEET_REPLY =
67
- T.let(:"tweet.reply", XTwitterScraper::Event::Type::TaggedSymbol)
68
- TWEET_RETWEET =
69
- T.let(:"tweet.retweet", XTwitterScraper::Event::Type::TaggedSymbol)
70
- TWEET_QUOTE =
71
- T.let(:"tweet.quote", XTwitterScraper::Event::Type::TaggedSymbol)
72
- FOLLOWER_GAINED =
73
- T.let(:"follower.gained", XTwitterScraper::Event::Type::TaggedSymbol)
74
- FOLLOWER_LOST =
75
- T.let(:"follower.lost", XTwitterScraper::Event::Type::TaggedSymbol)
76
-
77
- sig do
78
- override.returns(T::Array[XTwitterScraper::Event::Type::TaggedSymbol])
79
- end
80
- def self.values
81
- end
82
- end
83
66
  end
84
67
  end
85
68
  end
@@ -24,7 +24,8 @@ module XTwitterScraper
24
24
  sig { returns(Time) }
25
25
  attr_accessor :occurred_at
26
26
 
27
- sig { returns(XTwitterScraper::EventDetail::Type::OrSymbol) }
27
+ # Type of monitor event fired when account activity occurs.
28
+ sig { returns(XTwitterScraper::EventType::TaggedSymbol) }
28
29
  attr_accessor :type
29
30
 
30
31
  sig { returns(String) }
@@ -36,13 +37,14 @@ module XTwitterScraper
36
37
  sig { params(x_event_id: String).void }
37
38
  attr_writer :x_event_id
38
39
 
40
+ # Full monitor event including payload data and optional X event ID.
39
41
  sig do
40
42
  params(
41
43
  id: String,
42
44
  data: T::Hash[Symbol, T.anything],
43
45
  monitor_id: String,
44
46
  occurred_at: Time,
45
- type: XTwitterScraper::EventDetail::Type::OrSymbol,
47
+ type: XTwitterScraper::EventType::OrSymbol,
46
48
  username: String,
47
49
  x_event_id: String
48
50
  ).returns(T.attached_class)
@@ -53,6 +55,7 @@ module XTwitterScraper
53
55
  data:,
54
56
  monitor_id:,
55
57
  occurred_at:,
58
+ # Type of monitor event fired when account activity occurs.
56
59
  type:,
57
60
  username:,
58
61
  x_event_id: nil
@@ -66,7 +69,7 @@ module XTwitterScraper
66
69
  data: T::Hash[Symbol, T.anything],
67
70
  monitor_id: String,
68
71
  occurred_at: Time,
69
- type: XTwitterScraper::EventDetail::Type::OrSymbol,
72
+ type: XTwitterScraper::EventType::TaggedSymbol,
70
73
  username: String,
71
74
  x_event_id: String
72
75
  }
@@ -74,50 +77,6 @@ module XTwitterScraper
74
77
  end
75
78
  def to_hash
76
79
  end
77
-
78
- module Type
79
- extend XTwitterScraper::Internal::Type::Enum
80
-
81
- TaggedSymbol =
82
- T.type_alias { T.all(Symbol, XTwitterScraper::EventDetail::Type) }
83
- OrSymbol = T.type_alias { T.any(Symbol, String) }
84
-
85
- TWEET_NEW =
86
- T.let(:"tweet.new", XTwitterScraper::EventDetail::Type::TaggedSymbol)
87
- TWEET_REPLY =
88
- T.let(
89
- :"tweet.reply",
90
- XTwitterScraper::EventDetail::Type::TaggedSymbol
91
- )
92
- TWEET_RETWEET =
93
- T.let(
94
- :"tweet.retweet",
95
- XTwitterScraper::EventDetail::Type::TaggedSymbol
96
- )
97
- TWEET_QUOTE =
98
- T.let(
99
- :"tweet.quote",
100
- XTwitterScraper::EventDetail::Type::TaggedSymbol
101
- )
102
- FOLLOWER_GAINED =
103
- T.let(
104
- :"follower.gained",
105
- XTwitterScraper::EventDetail::Type::TaggedSymbol
106
- )
107
- FOLLOWER_LOST =
108
- T.let(
109
- :"follower.lost",
110
- XTwitterScraper::EventDetail::Type::TaggedSymbol
111
- )
112
-
113
- sig do
114
- override.returns(
115
- T::Array[XTwitterScraper::EventDetail::Type::TaggedSymbol]
116
- )
117
- end
118
- def self.values
119
- end
120
- end
121
80
  end
122
81
  end
123
82
  end
@@ -14,33 +14,28 @@ module XTwitterScraper
14
14
  )
15
15
  end
16
16
 
17
- # Cursor for pagination
17
+ # Cursor for keyset pagination
18
18
  sig { returns(T.nilable(String)) }
19
19
  attr_reader :after
20
20
 
21
21
  sig { params(after: String).void }
22
22
  attr_writer :after
23
23
 
24
- sig do
25
- returns(
26
- T.nilable(XTwitterScraper::EventListParams::EventType::OrSymbol)
27
- )
28
- end
24
+ # Filter events by type
25
+ sig { returns(T.nilable(XTwitterScraper::EventType::OrSymbol)) }
29
26
  attr_reader :event_type
30
27
 
31
- sig do
32
- params(
33
- event_type: XTwitterScraper::EventListParams::EventType::OrSymbol
34
- ).void
35
- end
28
+ sig { params(event_type: XTwitterScraper::EventType::OrSymbol).void }
36
29
  attr_writer :event_type
37
30
 
31
+ # Maximum number of items to return (1-100, default 50)
38
32
  sig { returns(T.nilable(Integer)) }
39
33
  attr_reader :limit
40
34
 
41
35
  sig { params(limit: Integer).void }
42
36
  attr_writer :limit
43
37
 
38
+ # Filter events by monitor ID
44
39
  sig { returns(T.nilable(String)) }
45
40
  attr_reader :monitor_id
46
41
 
@@ -50,17 +45,20 @@ module XTwitterScraper
50
45
  sig do
51
46
  params(
52
47
  after: String,
53
- event_type: XTwitterScraper::EventListParams::EventType::OrSymbol,
48
+ event_type: XTwitterScraper::EventType::OrSymbol,
54
49
  limit: Integer,
55
50
  monitor_id: String,
56
51
  request_options: XTwitterScraper::RequestOptions::OrHash
57
52
  ).returns(T.attached_class)
58
53
  end
59
54
  def self.new(
60
- # Cursor for pagination
55
+ # Cursor for keyset pagination
61
56
  after: nil,
57
+ # Filter events by type
62
58
  event_type: nil,
59
+ # Maximum number of items to return (1-100, default 50)
63
60
  limit: nil,
61
+ # Filter events by monitor ID
64
62
  monitor_id: nil,
65
63
  request_options: {}
66
64
  )
@@ -70,7 +68,7 @@ module XTwitterScraper
70
68
  override.returns(
71
69
  {
72
70
  after: String,
73
- event_type: XTwitterScraper::EventListParams::EventType::OrSymbol,
71
+ event_type: XTwitterScraper::EventType::OrSymbol,
74
72
  limit: Integer,
75
73
  monitor_id: String,
76
74
  request_options: XTwitterScraper::RequestOptions
@@ -79,55 +77,6 @@ module XTwitterScraper
79
77
  end
80
78
  def to_hash
81
79
  end
82
-
83
- module EventType
84
- extend XTwitterScraper::Internal::Type::Enum
85
-
86
- TaggedSymbol =
87
- T.type_alias do
88
- T.all(Symbol, XTwitterScraper::EventListParams::EventType)
89
- end
90
- OrSymbol = T.type_alias { T.any(Symbol, String) }
91
-
92
- TWEET_NEW =
93
- T.let(
94
- :"tweet.new",
95
- XTwitterScraper::EventListParams::EventType::TaggedSymbol
96
- )
97
- TWEET_REPLY =
98
- T.let(
99
- :"tweet.reply",
100
- XTwitterScraper::EventListParams::EventType::TaggedSymbol
101
- )
102
- TWEET_RETWEET =
103
- T.let(
104
- :"tweet.retweet",
105
- XTwitterScraper::EventListParams::EventType::TaggedSymbol
106
- )
107
- TWEET_QUOTE =
108
- T.let(
109
- :"tweet.quote",
110
- XTwitterScraper::EventListParams::EventType::TaggedSymbol
111
- )
112
- FOLLOWER_GAINED =
113
- T.let(
114
- :"follower.gained",
115
- XTwitterScraper::EventListParams::EventType::TaggedSymbol
116
- )
117
- FOLLOWER_LOST =
118
- T.let(
119
- :"follower.lost",
120
- XTwitterScraper::EventListParams::EventType::TaggedSymbol
121
- )
122
-
123
- sig do
124
- override.returns(
125
- T::Array[XTwitterScraper::EventListParams::EventType::TaggedSymbol]
126
- )
127
- end
128
- def self.values
129
- end
130
- end
131
80
  end
132
81
  end
133
82
  end