x-twitter-scraper 0.7.2 → 0.9.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 (157) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +24 -0
  3. data/README.md +3 -3
  4. data/lib/x_twitter_scraper/models/credit_topup_balance_response.rb +5 -5
  5. data/lib/x_twitter_scraper/models/draw_export_params.rb +8 -3
  6. data/lib/x_twitter_scraper/models/draw_list_params.rb +2 -2
  7. data/lib/x_twitter_scraper/models/error.rb +8 -0
  8. data/lib/x_twitter_scraper/models/event_list_params.rb +13 -5
  9. data/lib/x_twitter_scraper/models/extraction_estimate_cost_params.rb +731 -82
  10. data/lib/x_twitter_scraper/models/extraction_estimate_cost_response.rb +1 -0
  11. data/lib/x_twitter_scraper/models/extraction_export_results_params.rb +145 -1
  12. data/lib/x_twitter_scraper/models/extraction_list_params.rb +2 -2
  13. data/lib/x_twitter_scraper/models/extraction_retrieve_params.rb +70 -3
  14. data/lib/x_twitter_scraper/models/extraction_run_params.rb +662 -1
  15. data/lib/x_twitter_scraper/models/extraction_run_response.rb +27 -48
  16. data/lib/x_twitter_scraper/models/guest_wallet_create_response.rb +8 -8
  17. data/lib/x_twitter_scraper/models/guest_wallet_topup_response.rb +9 -9
  18. data/lib/x_twitter_scraper/models/monitor.rb +29 -1
  19. data/lib/x_twitter_scraper/models/paginated_tweets.rb +4 -4
  20. data/lib/x_twitter_scraper/models/paginated_users.rb +5 -5
  21. data/lib/x_twitter_scraper/models/support/attachment_download_params.rb +28 -0
  22. data/lib/x_twitter_scraper/models/x/community_retrieve_members_params.rb +113 -1
  23. data/lib/x_twitter_scraper/models/x/community_retrieve_moderators_params.rb +117 -1
  24. data/lib/x_twitter_scraper/models/x/list_retrieve_followers_params.rb +117 -6
  25. data/lib/x_twitter_scraper/models/x/list_retrieve_members_params.rb +116 -1
  26. data/lib/x_twitter_scraper/models/x/tweet_get_favoriters_params.rb +117 -6
  27. data/lib/x_twitter_scraper/models/x/tweet_get_quotes_params.rb +153 -1
  28. data/lib/x_twitter_scraper/models/x/tweet_get_replies_params.rb +246 -16
  29. data/lib/x_twitter_scraper/models/x/tweet_get_replies_response.rb +3 -2
  30. data/lib/x_twitter_scraper/models/x/tweet_get_retweeters_params.rb +117 -6
  31. data/lib/x_twitter_scraper/models/x/tweet_search_params.rb +187 -14
  32. data/lib/x_twitter_scraper/models/x/tweet_search_response.rb +299 -0
  33. data/lib/x_twitter_scraper/models/x/user_retrieve_followers_params.rb +143 -10
  34. data/lib/x_twitter_scraper/models/x/user_retrieve_followers_response.rb +241 -0
  35. data/lib/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rb +117 -6
  36. data/lib/x_twitter_scraper/models/x/user_retrieve_following_params.rb +143 -10
  37. data/lib/x_twitter_scraper/models/x/user_retrieve_following_response.rb +241 -0
  38. data/lib/x_twitter_scraper/models/x/user_retrieve_likes_params.rb +153 -1
  39. data/lib/x_twitter_scraper/models/x/user_retrieve_media_params.rb +153 -1
  40. data/lib/x_twitter_scraper/models/x/user_retrieve_mentions_params.rb +153 -1
  41. data/lib/x_twitter_scraper/models/x/user_retrieve_replies_params.rb +159 -7
  42. data/lib/x_twitter_scraper/models/x/user_retrieve_search_params.rb +116 -1
  43. data/lib/x_twitter_scraper/models/x/user_retrieve_tweets_params.rb +159 -7
  44. data/lib/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rb +157 -8
  45. data/lib/x_twitter_scraper/models/x/user_retrieve_verified_followers_response.rb +245 -0
  46. data/lib/x_twitter_scraper/models/x/x_account.rb +7 -11
  47. data/lib/x_twitter_scraper/resources/credits.rb +2 -2
  48. data/lib/x_twitter_scraper/resources/draws.rb +5 -2
  49. data/lib/x_twitter_scraper/resources/events.rb +10 -4
  50. data/lib/x_twitter_scraper/resources/extractions.rb +383 -84
  51. data/lib/x_twitter_scraper/resources/guest_wallets.rb +9 -13
  52. data/lib/x_twitter_scraper/resources/support/attachments.rb +42 -0
  53. data/lib/x_twitter_scraper/resources/support.rb +5 -0
  54. data/lib/x_twitter_scraper/resources/x/communities.rb +95 -4
  55. data/lib/x_twitter_scraper/resources/x/lists.rb +96 -5
  56. data/lib/x_twitter_scraper/resources/x/tweets.rb +286 -28
  57. data/lib/x_twitter_scraper/resources/x/users.rb +531 -41
  58. data/lib/x_twitter_scraper/version.rb +1 -1
  59. data/lib/x_twitter_scraper.rb +7 -1
  60. data/rbi/x_twitter_scraper/models/credit_topup_balance_response.rbi +6 -6
  61. data/rbi/x_twitter_scraper/models/draw_export_params.rbi +6 -3
  62. data/rbi/x_twitter_scraper/models/draw_list_params.rbi +2 -2
  63. data/rbi/x_twitter_scraper/models/error.rbi +40 -0
  64. data/rbi/x_twitter_scraper/models/event_list_params.rbi +15 -4
  65. data/rbi/x_twitter_scraper/models/extraction_estimate_cost_params.rbi +1338 -86
  66. data/rbi/x_twitter_scraper/models/extraction_estimate_cost_response.rbi +5 -0
  67. data/rbi/x_twitter_scraper/models/extraction_export_results_params.rbi +198 -0
  68. data/rbi/x_twitter_scraper/models/extraction_list_params.rbi +2 -2
  69. data/rbi/x_twitter_scraper/models/extraction_retrieve_params.rbi +194 -2
  70. data/rbi/x_twitter_scraper/models/extraction_run_params.rbi +1221 -0
  71. data/rbi/x_twitter_scraper/models/extraction_run_response.rbi +35 -162
  72. data/rbi/x_twitter_scraper/models/guest_wallet_create_response.rbi +8 -6
  73. data/rbi/x_twitter_scraper/models/guest_wallet_topup_response.rbi +9 -7
  74. data/rbi/x_twitter_scraper/models/monitor.rbi +54 -3
  75. data/rbi/x_twitter_scraper/models/paginated_tweets.rbi +4 -4
  76. data/rbi/x_twitter_scraper/models/paginated_users.rbi +5 -5
  77. data/rbi/x_twitter_scraper/models/support/attachment_download_params.rbi +51 -0
  78. data/rbi/x_twitter_scraper/models/x/community_retrieve_members_params.rbi +154 -0
  79. data/rbi/x_twitter_scraper/models/x/community_retrieve_moderators_params.rbi +154 -0
  80. data/rbi/x_twitter_scraper/models/x/list_retrieve_followers_params.rbi +160 -8
  81. data/rbi/x_twitter_scraper/models/x/list_retrieve_members_params.rbi +154 -0
  82. data/rbi/x_twitter_scraper/models/x/tweet_get_favoriters_params.rbi +160 -8
  83. data/rbi/x_twitter_scraper/models/x/tweet_get_quotes_params.rbi +209 -0
  84. data/rbi/x_twitter_scraper/models/x/tweet_get_replies_params.rbi +403 -20
  85. data/rbi/x_twitter_scraper/models/x/tweet_get_replies_response.rbi +3 -2
  86. data/rbi/x_twitter_scraper/models/x/tweet_get_retweeters_params.rbi +160 -8
  87. data/rbi/x_twitter_scraper/models/x/tweet_search_params.rbi +279 -16
  88. data/rbi/x_twitter_scraper/models/x/tweet_search_response.rbi +543 -0
  89. data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_params.rbi +228 -12
  90. data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_response.rbi +440 -0
  91. data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rbi +160 -8
  92. data/rbi/x_twitter_scraper/models/x/user_retrieve_following_params.rbi +228 -12
  93. data/rbi/x_twitter_scraper/models/x/user_retrieve_following_response.rbi +440 -0
  94. data/rbi/x_twitter_scraper/models/x/user_retrieve_likes_params.rbi +209 -0
  95. data/rbi/x_twitter_scraper/models/x/user_retrieve_media_params.rbi +209 -0
  96. data/rbi/x_twitter_scraper/models/x/user_retrieve_mentions_params.rbi +209 -0
  97. data/rbi/x_twitter_scraper/models/x/user_retrieve_replies_params.rbi +217 -8
  98. data/rbi/x_twitter_scraper/models/x/user_retrieve_search_params.rbi +154 -0
  99. data/rbi/x_twitter_scraper/models/x/user_retrieve_tweets_params.rbi +217 -8
  100. data/rbi/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rbi +248 -10
  101. data/rbi/x_twitter_scraper/models/x/user_retrieve_verified_followers_response.rbi +440 -0
  102. data/rbi/x_twitter_scraper/models/x/x_account.rbi +9 -15
  103. data/rbi/x_twitter_scraper/resources/credits.rbi +2 -2
  104. data/rbi/x_twitter_scraper/resources/draws.rbi +3 -2
  105. data/rbi/x_twitter_scraper/resources/events.rbi +5 -2
  106. data/rbi/x_twitter_scraper/resources/extractions.rbi +525 -83
  107. data/rbi/x_twitter_scraper/resources/guest_wallets.rbi +9 -13
  108. data/rbi/x_twitter_scraper/resources/support/attachments.rbi +35 -0
  109. data/rbi/x_twitter_scraper/resources/support.rbi +4 -0
  110. data/rbi/x_twitter_scraper/resources/x/communities.rbi +84 -0
  111. data/rbi/x_twitter_scraper/resources/x/lists.rbi +87 -4
  112. data/rbi/x_twitter_scraper/resources/x/tweets.rbi +307 -31
  113. data/rbi/x_twitter_scraper/resources/x/users.rbi +558 -34
  114. data/sig/x_twitter_scraper/models/error.rbs +16 -0
  115. data/sig/x_twitter_scraper/models/event_list_params.rbs +7 -0
  116. data/sig/x_twitter_scraper/models/extraction_estimate_cost_params.rbs +605 -1
  117. data/sig/x_twitter_scraper/models/extraction_estimate_cost_response.rbs +2 -0
  118. data/sig/x_twitter_scraper/models/extraction_export_results_params.rbs +127 -1
  119. data/sig/x_twitter_scraper/models/extraction_retrieve_params.rbs +74 -1
  120. data/sig/x_twitter_scraper/models/extraction_run_params.rbs +611 -1
  121. data/sig/x_twitter_scraper/models/extraction_run_response.rbs +29 -67
  122. data/sig/x_twitter_scraper/models/guest_wallet_create_response.rbs +4 -4
  123. data/sig/x_twitter_scraper/models/guest_wallet_topup_response.rbs +4 -4
  124. data/sig/x_twitter_scraper/models/monitor.rbs +29 -3
  125. data/sig/x_twitter_scraper/models/support/attachment_download_params.rbs +32 -0
  126. data/sig/x_twitter_scraper/models/x/community_retrieve_members_params.rbs +103 -1
  127. data/sig/x_twitter_scraper/models/x/community_retrieve_moderators_params.rbs +102 -1
  128. data/sig/x_twitter_scraper/models/x/list_retrieve_followers_params.rbs +103 -1
  129. data/sig/x_twitter_scraper/models/x/list_retrieve_members_params.rbs +103 -1
  130. data/sig/x_twitter_scraper/models/x/tweet_get_favoriters_params.rbs +103 -1
  131. data/sig/x_twitter_scraper/models/x/tweet_get_quotes_params.rbs +134 -1
  132. data/sig/x_twitter_scraper/models/x/tweet_get_replies_params.rbs +207 -2
  133. data/sig/x_twitter_scraper/models/x/tweet_get_retweeters_params.rbs +103 -1
  134. data/sig/x_twitter_scraper/models/x/tweet_search_params.rbs +154 -1
  135. data/sig/x_twitter_scraper/models/x/tweet_search_response.rbs +258 -0
  136. data/sig/x_twitter_scraper/models/x/user_retrieve_followers_params.rbs +119 -1
  137. data/sig/x_twitter_scraper/models/x/user_retrieve_followers_response.rbs +216 -0
  138. data/sig/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rbs +103 -1
  139. data/sig/x_twitter_scraper/models/x/user_retrieve_following_params.rbs +119 -1
  140. data/sig/x_twitter_scraper/models/x/user_retrieve_following_response.rbs +216 -0
  141. data/sig/x_twitter_scraper/models/x/user_retrieve_likes_params.rbs +134 -1
  142. data/sig/x_twitter_scraper/models/x/user_retrieve_media_params.rbs +134 -1
  143. data/sig/x_twitter_scraper/models/x/user_retrieve_mentions_params.rbs +134 -1
  144. data/sig/x_twitter_scraper/models/x/user_retrieve_replies_params.rbs +134 -1
  145. data/sig/x_twitter_scraper/models/x/user_retrieve_search_params.rbs +102 -1
  146. data/sig/x_twitter_scraper/models/x/user_retrieve_tweets_params.rbs +134 -1
  147. data/sig/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rbs +137 -1
  148. data/sig/x_twitter_scraper/models/x/user_retrieve_verified_followers_response.rbs +216 -0
  149. data/sig/x_twitter_scraper/resources/events.rbs +1 -0
  150. data/sig/x_twitter_scraper/resources/extractions.rbs +137 -0
  151. data/sig/x_twitter_scraper/resources/support/attachments.rbs +15 -0
  152. data/sig/x_twitter_scraper/resources/support.rbs +2 -0
  153. data/sig/x_twitter_scraper/resources/x/communities.rbs +28 -0
  154. data/sig/x_twitter_scraper/resources/x/lists.rbs +28 -0
  155. data/sig/x_twitter_scraper/resources/x/tweets.rbs +93 -1
  156. data/sig/x_twitter_scraper/resources/x/users.rbs +173 -3
  157. metadata +19 -1
@@ -9,42 +9,99 @@ module XTwitterScraper
9
9
  tool_type: XTwitterScraper::Models::ExtractionEstimateCostParams::tool_type,
10
10
  advanced_query: String,
11
11
  any_words: String,
12
+ bio_contains: String,
13
+ blue_verified_only: bool,
12
14
  bounding_box: String,
15
+ card_name: String,
13
16
  cashtags: String,
17
+ collection_strategy: XTwitterScraper::Models::ExtractionEstimateCostParams::collection_strategy,
14
18
  conversation_id: String,
19
+ dedupe_across_targets: bool,
20
+ dedupe_mode: XTwitterScraper::Models::ExtractionEstimateCostParams::dedupe_mode,
15
21
  exact_phrase: String,
22
+ exclude_original_author: bool,
23
+ exclude_source: String,
16
24
  exclude_words: String,
17
25
  from_user: String,
26
+ geocode: String,
18
27
  hashtags: String,
28
+ has_location: bool,
29
+ has_media_only: bool,
30
+ has_website: bool,
31
+ include_original_post: bool,
32
+ include_search_terms: bool,
33
+ include_target_metadata: bool,
19
34
  in_reply_to_tweet_id: String,
20
35
  language: String,
21
36
  list_id: String,
37
+ location_contains: String,
38
+ max_depth: Integer,
39
+ max_followers: Integer,
40
+ max_following: Integer,
41
+ max_id: String,
42
+ max_items_per_target: Integer,
43
+ max_likes: Integer,
44
+ max_pages_per_target: Integer,
45
+ max_posts: Integer,
46
+ max_quotes: Integer,
47
+ max_replies: Integer,
48
+ max_retweets: Integer,
22
49
  media_type: XTwitterScraper::Models::ExtractionEstimateCostParams::media_type,
23
50
  mentioning: String,
51
+ min_account_age_days: Integer,
52
+ min_bookmarks: Integer,
24
53
  min_faves: Integer,
54
+ min_followers: Integer,
55
+ min_following: Integer,
56
+ min_posts: Integer,
25
57
  min_quotes: Integer,
26
58
  min_replies: Integer,
27
59
  min_retweets: Integer,
60
+ min_views: Integer,
61
+ native_retweets: bool,
62
+ near: String,
63
+ news: bool,
64
+ overlap_mode: bool,
28
65
  place: String,
29
66
  place_country: String,
30
67
  point_radius: String,
68
+ query_type: XTwitterScraper::Models::ExtractionEstimateCostParams::query_type,
31
69
  quotes: XTwitterScraper::Models::ExtractionEstimateCostParams::quotes,
32
70
  quotes_of_tweet_id: String,
71
+ relation_targets: ::Array[XTwitterScraper::ExtractionEstimateCostParams::RelationTarget],
33
72
  replies: XTwitterScraper::Models::ExtractionEstimateCostParams::replies,
34
73
  results_limit: Integer,
35
74
  retweets: XTwitterScraper::Models::ExtractionEstimateCostParams::retweets,
36
75
  retweets_of_tweet_id: String,
76
+ safe: bool,
77
+ scope: XTwitterScraper::Models::ExtractionEstimateCostParams::scope,
78
+ search_queries: ::Array[String],
37
79
  search_query: String,
38
80
  since_date: Date,
81
+ since_id: String,
82
+ since_time: XTwitterScraper::Models::ExtractionEstimateCostParams::since_time,
83
+ sort: XTwitterScraper::Models::ExtractionEstimateCostParams::sort,
84
+ source: String,
85
+ start_cursor: String,
39
86
  target_community_id: String,
87
+ target_community_ids: ::Array[String],
40
88
  target_list_id: String,
89
+ target_list_ids: ::Array[String],
90
+ targets: ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::target],
41
91
  target_space_id: String,
42
92
  target_tweet_id: String,
93
+ target_tweet_ids: ::Array[String],
43
94
  target_username: String,
95
+ target_usernames: ::Array[String],
44
96
  to_user: String,
45
97
  until_date: Date,
98
+ until_time: XTwitterScraper::Models::ExtractionEstimateCostParams::until_time,
46
99
  url: String,
47
- verified_only: bool
100
+ username_contains: String,
101
+ verified_only: bool,
102
+ verified_type: String,
103
+ within: String,
104
+ within_time: String
48
105
  }
49
106
  & XTwitterScraper::Internal::Type::request_parameters
50
107
 
@@ -62,22 +119,58 @@ module XTwitterScraper
62
119
 
63
120
  def any_words=: (String) -> String
64
121
 
122
+ attr_reader bio_contains: String?
123
+
124
+ def bio_contains=: (String) -> String
125
+
126
+ attr_reader blue_verified_only: bool?
127
+
128
+ def blue_verified_only=: (bool) -> bool
129
+
65
130
  attr_reader bounding_box: String?
66
131
 
67
132
  def bounding_box=: (String) -> String
68
133
 
134
+ attr_reader card_name: String?
135
+
136
+ def card_name=: (String) -> String
137
+
69
138
  attr_reader cashtags: String?
70
139
 
71
140
  def cashtags=: (String) -> String
72
141
 
142
+ attr_reader collection_strategy: XTwitterScraper::Models::ExtractionEstimateCostParams::collection_strategy?
143
+
144
+ def collection_strategy=: (
145
+ XTwitterScraper::Models::ExtractionEstimateCostParams::collection_strategy
146
+ ) -> XTwitterScraper::Models::ExtractionEstimateCostParams::collection_strategy
147
+
73
148
  attr_reader conversation_id: String?
74
149
 
75
150
  def conversation_id=: (String) -> String
76
151
 
152
+ attr_reader dedupe_across_targets: bool?
153
+
154
+ def dedupe_across_targets=: (bool) -> bool
155
+
156
+ attr_reader dedupe_mode: XTwitterScraper::Models::ExtractionEstimateCostParams::dedupe_mode?
157
+
158
+ def dedupe_mode=: (
159
+ XTwitterScraper::Models::ExtractionEstimateCostParams::dedupe_mode
160
+ ) -> XTwitterScraper::Models::ExtractionEstimateCostParams::dedupe_mode
161
+
77
162
  attr_reader exact_phrase: String?
78
163
 
79
164
  def exact_phrase=: (String) -> String
80
165
 
166
+ attr_reader exclude_original_author: bool?
167
+
168
+ def exclude_original_author=: (bool) -> bool
169
+
170
+ attr_reader exclude_source: String?
171
+
172
+ def exclude_source=: (String) -> String
173
+
81
174
  attr_reader exclude_words: String?
82
175
 
83
176
  def exclude_words=: (String) -> String
@@ -86,10 +179,38 @@ module XTwitterScraper
86
179
 
87
180
  def from_user=: (String) -> String
88
181
 
182
+ attr_reader geocode: String?
183
+
184
+ def geocode=: (String) -> String
185
+
89
186
  attr_reader hashtags: String?
90
187
 
91
188
  def hashtags=: (String) -> String
92
189
 
190
+ attr_reader has_location: bool?
191
+
192
+ def has_location=: (bool) -> bool
193
+
194
+ attr_reader has_media_only: bool?
195
+
196
+ def has_media_only=: (bool) -> bool
197
+
198
+ attr_reader has_website: bool?
199
+
200
+ def has_website=: (bool) -> bool
201
+
202
+ attr_reader include_original_post: bool?
203
+
204
+ def include_original_post=: (bool) -> bool
205
+
206
+ attr_reader include_search_terms: bool?
207
+
208
+ def include_search_terms=: (bool) -> bool
209
+
210
+ attr_reader include_target_metadata: bool?
211
+
212
+ def include_target_metadata=: (bool) -> bool
213
+
93
214
  attr_reader in_reply_to_tweet_id: String?
94
215
 
95
216
  def in_reply_to_tweet_id=: (String) -> String
@@ -102,6 +223,54 @@ module XTwitterScraper
102
223
 
103
224
  def list_id=: (String) -> String
104
225
 
226
+ attr_reader location_contains: String?
227
+
228
+ def location_contains=: (String) -> String
229
+
230
+ attr_reader max_depth: Integer?
231
+
232
+ def max_depth=: (Integer) -> Integer
233
+
234
+ attr_reader max_followers: Integer?
235
+
236
+ def max_followers=: (Integer) -> Integer
237
+
238
+ attr_reader max_following: Integer?
239
+
240
+ def max_following=: (Integer) -> Integer
241
+
242
+ attr_reader max_id: String?
243
+
244
+ def max_id=: (String) -> String
245
+
246
+ attr_reader max_items_per_target: Integer?
247
+
248
+ def max_items_per_target=: (Integer) -> Integer
249
+
250
+ attr_reader max_likes: Integer?
251
+
252
+ def max_likes=: (Integer) -> Integer
253
+
254
+ attr_reader max_pages_per_target: Integer?
255
+
256
+ def max_pages_per_target=: (Integer) -> Integer
257
+
258
+ attr_reader max_posts: Integer?
259
+
260
+ def max_posts=: (Integer) -> Integer
261
+
262
+ attr_reader max_quotes: Integer?
263
+
264
+ def max_quotes=: (Integer) -> Integer
265
+
266
+ attr_reader max_replies: Integer?
267
+
268
+ def max_replies=: (Integer) -> Integer
269
+
270
+ attr_reader max_retweets: Integer?
271
+
272
+ def max_retweets=: (Integer) -> Integer
273
+
105
274
  attr_reader media_type: XTwitterScraper::Models::ExtractionEstimateCostParams::media_type?
106
275
 
107
276
  def media_type=: (
@@ -112,10 +281,30 @@ module XTwitterScraper
112
281
 
113
282
  def mentioning=: (String) -> String
114
283
 
284
+ attr_reader min_account_age_days: Integer?
285
+
286
+ def min_account_age_days=: (Integer) -> Integer
287
+
288
+ attr_reader min_bookmarks: Integer?
289
+
290
+ def min_bookmarks=: (Integer) -> Integer
291
+
115
292
  attr_reader min_faves: Integer?
116
293
 
117
294
  def min_faves=: (Integer) -> Integer
118
295
 
296
+ attr_reader min_followers: Integer?
297
+
298
+ def min_followers=: (Integer) -> Integer
299
+
300
+ attr_reader min_following: Integer?
301
+
302
+ def min_following=: (Integer) -> Integer
303
+
304
+ attr_reader min_posts: Integer?
305
+
306
+ def min_posts=: (Integer) -> Integer
307
+
119
308
  attr_reader min_quotes: Integer?
120
309
 
121
310
  def min_quotes=: (Integer) -> Integer
@@ -128,6 +317,26 @@ module XTwitterScraper
128
317
 
129
318
  def min_retweets=: (Integer) -> Integer
130
319
 
320
+ attr_reader min_views: Integer?
321
+
322
+ def min_views=: (Integer) -> Integer
323
+
324
+ attr_reader native_retweets: bool?
325
+
326
+ def native_retweets=: (bool) -> bool
327
+
328
+ attr_reader near: String?
329
+
330
+ def near=: (String) -> String
331
+
332
+ attr_reader news: bool?
333
+
334
+ def news=: (bool) -> bool
335
+
336
+ attr_reader overlap_mode: bool?
337
+
338
+ def overlap_mode=: (bool) -> bool
339
+
131
340
  attr_reader place: String?
132
341
 
133
342
  def place=: (String) -> String
@@ -140,6 +349,12 @@ module XTwitterScraper
140
349
 
141
350
  def point_radius=: (String) -> String
142
351
 
352
+ attr_reader query_type: XTwitterScraper::Models::ExtractionEstimateCostParams::query_type?
353
+
354
+ def query_type=: (
355
+ XTwitterScraper::Models::ExtractionEstimateCostParams::query_type
356
+ ) -> XTwitterScraper::Models::ExtractionEstimateCostParams::query_type
357
+
143
358
  attr_reader quotes: XTwitterScraper::Models::ExtractionEstimateCostParams::quotes?
144
359
 
145
360
  def quotes=: (
@@ -150,6 +365,12 @@ module XTwitterScraper
150
365
 
151
366
  def quotes_of_tweet_id=: (String) -> String
152
367
 
368
+ attr_reader relation_targets: ::Array[XTwitterScraper::ExtractionEstimateCostParams::RelationTarget]?
369
+
370
+ def relation_targets=: (
371
+ ::Array[XTwitterScraper::ExtractionEstimateCostParams::RelationTarget]
372
+ ) -> ::Array[XTwitterScraper::ExtractionEstimateCostParams::RelationTarget]
373
+
153
374
  attr_reader replies: XTwitterScraper::Models::ExtractionEstimateCostParams::replies?
154
375
 
155
376
  def replies=: (
@@ -170,6 +391,20 @@ module XTwitterScraper
170
391
 
171
392
  def retweets_of_tweet_id=: (String) -> String
172
393
 
394
+ attr_reader safe: bool?
395
+
396
+ def safe=: (bool) -> bool
397
+
398
+ attr_reader scope: XTwitterScraper::Models::ExtractionEstimateCostParams::scope?
399
+
400
+ def scope=: (
401
+ XTwitterScraper::Models::ExtractionEstimateCostParams::scope
402
+ ) -> XTwitterScraper::Models::ExtractionEstimateCostParams::scope
403
+
404
+ attr_reader search_queries: ::Array[String]?
405
+
406
+ def search_queries=: (::Array[String]) -> ::Array[String]
407
+
173
408
  attr_reader search_query: String?
174
409
 
175
410
  def search_query=: (String) -> String
@@ -178,14 +413,52 @@ module XTwitterScraper
178
413
 
179
414
  def since_date=: (Date) -> Date
180
415
 
416
+ attr_reader since_id: String?
417
+
418
+ def since_id=: (String) -> String
419
+
420
+ attr_reader since_time: XTwitterScraper::Models::ExtractionEstimateCostParams::since_time?
421
+
422
+ def since_time=: (
423
+ XTwitterScraper::Models::ExtractionEstimateCostParams::since_time
424
+ ) -> XTwitterScraper::Models::ExtractionEstimateCostParams::since_time
425
+
426
+ attr_reader sort: XTwitterScraper::Models::ExtractionEstimateCostParams::sort?
427
+
428
+ def sort=: (
429
+ XTwitterScraper::Models::ExtractionEstimateCostParams::sort
430
+ ) -> XTwitterScraper::Models::ExtractionEstimateCostParams::sort
431
+
432
+ attr_reader source: String?
433
+
434
+ def source=: (String) -> String
435
+
436
+ attr_reader start_cursor: String?
437
+
438
+ def start_cursor=: (String) -> String
439
+
181
440
  attr_reader target_community_id: String?
182
441
 
183
442
  def target_community_id=: (String) -> String
184
443
 
444
+ attr_reader target_community_ids: ::Array[String]?
445
+
446
+ def target_community_ids=: (::Array[String]) -> ::Array[String]
447
+
185
448
  attr_reader target_list_id: String?
186
449
 
187
450
  def target_list_id=: (String) -> String
188
451
 
452
+ attr_reader target_list_ids: ::Array[String]?
453
+
454
+ def target_list_ids=: (::Array[String]) -> ::Array[String]
455
+
456
+ attr_reader targets: ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::target]?
457
+
458
+ def targets=: (
459
+ ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::target]
460
+ ) -> ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::target]
461
+
189
462
  attr_reader target_space_id: String?
190
463
 
191
464
  def target_space_id=: (String) -> String
@@ -194,10 +467,18 @@ module XTwitterScraper
194
467
 
195
468
  def target_tweet_id=: (String) -> String
196
469
 
470
+ attr_reader target_tweet_ids: ::Array[String]?
471
+
472
+ def target_tweet_ids=: (::Array[String]) -> ::Array[String]
473
+
197
474
  attr_reader target_username: String?
198
475
 
199
476
  def target_username=: (String) -> String
200
477
 
478
+ attr_reader target_usernames: ::Array[String]?
479
+
480
+ def target_usernames=: (::Array[String]) -> ::Array[String]
481
+
201
482
  attr_reader to_user: String?
202
483
 
203
484
  def to_user=: (String) -> String
@@ -206,54 +487,133 @@ module XTwitterScraper
206
487
 
207
488
  def until_date=: (Date) -> Date
208
489
 
490
+ attr_reader until_time: XTwitterScraper::Models::ExtractionEstimateCostParams::until_time?
491
+
492
+ def until_time=: (
493
+ XTwitterScraper::Models::ExtractionEstimateCostParams::until_time
494
+ ) -> XTwitterScraper::Models::ExtractionEstimateCostParams::until_time
495
+
209
496
  attr_reader url: String?
210
497
 
211
498
  def url=: (String) -> String
212
499
 
500
+ attr_reader username_contains: String?
501
+
502
+ def username_contains=: (String) -> String
503
+
213
504
  attr_reader verified_only: bool?
214
505
 
215
506
  def verified_only=: (bool) -> bool
216
507
 
508
+ attr_reader verified_type: String?
509
+
510
+ def verified_type=: (String) -> String
511
+
512
+ attr_reader within: String?
513
+
514
+ def within=: (String) -> String
515
+
516
+ attr_reader within_time: String?
517
+
518
+ def within_time=: (String) -> String
519
+
217
520
  def initialize: (
218
521
  tool_type: XTwitterScraper::Models::ExtractionEstimateCostParams::tool_type,
219
522
  ?advanced_query: String,
220
523
  ?any_words: String,
524
+ ?bio_contains: String,
525
+ ?blue_verified_only: bool,
221
526
  ?bounding_box: String,
527
+ ?card_name: String,
222
528
  ?cashtags: String,
529
+ ?collection_strategy: XTwitterScraper::Models::ExtractionEstimateCostParams::collection_strategy,
223
530
  ?conversation_id: String,
531
+ ?dedupe_across_targets: bool,
532
+ ?dedupe_mode: XTwitterScraper::Models::ExtractionEstimateCostParams::dedupe_mode,
224
533
  ?exact_phrase: String,
534
+ ?exclude_original_author: bool,
535
+ ?exclude_source: String,
225
536
  ?exclude_words: String,
226
537
  ?from_user: String,
538
+ ?geocode: String,
227
539
  ?hashtags: String,
540
+ ?has_location: bool,
541
+ ?has_media_only: bool,
542
+ ?has_website: bool,
543
+ ?include_original_post: bool,
544
+ ?include_search_terms: bool,
545
+ ?include_target_metadata: bool,
228
546
  ?in_reply_to_tweet_id: String,
229
547
  ?language: String,
230
548
  ?list_id: String,
549
+ ?location_contains: String,
550
+ ?max_depth: Integer,
551
+ ?max_followers: Integer,
552
+ ?max_following: Integer,
553
+ ?max_id: String,
554
+ ?max_items_per_target: Integer,
555
+ ?max_likes: Integer,
556
+ ?max_pages_per_target: Integer,
557
+ ?max_posts: Integer,
558
+ ?max_quotes: Integer,
559
+ ?max_replies: Integer,
560
+ ?max_retweets: Integer,
231
561
  ?media_type: XTwitterScraper::Models::ExtractionEstimateCostParams::media_type,
232
562
  ?mentioning: String,
563
+ ?min_account_age_days: Integer,
564
+ ?min_bookmarks: Integer,
233
565
  ?min_faves: Integer,
566
+ ?min_followers: Integer,
567
+ ?min_following: Integer,
568
+ ?min_posts: Integer,
234
569
  ?min_quotes: Integer,
235
570
  ?min_replies: Integer,
236
571
  ?min_retweets: Integer,
572
+ ?min_views: Integer,
573
+ ?native_retweets: bool,
574
+ ?near: String,
575
+ ?news: bool,
576
+ ?overlap_mode: bool,
237
577
  ?place: String,
238
578
  ?place_country: String,
239
579
  ?point_radius: String,
580
+ ?query_type: XTwitterScraper::Models::ExtractionEstimateCostParams::query_type,
240
581
  ?quotes: XTwitterScraper::Models::ExtractionEstimateCostParams::quotes,
241
582
  ?quotes_of_tweet_id: String,
583
+ ?relation_targets: ::Array[XTwitterScraper::ExtractionEstimateCostParams::RelationTarget],
242
584
  ?replies: XTwitterScraper::Models::ExtractionEstimateCostParams::replies,
243
585
  ?results_limit: Integer,
244
586
  ?retweets: XTwitterScraper::Models::ExtractionEstimateCostParams::retweets,
245
587
  ?retweets_of_tweet_id: String,
588
+ ?safe: bool,
589
+ ?scope: XTwitterScraper::Models::ExtractionEstimateCostParams::scope,
590
+ ?search_queries: ::Array[String],
246
591
  ?search_query: String,
247
592
  ?since_date: Date,
593
+ ?since_id: String,
594
+ ?since_time: XTwitterScraper::Models::ExtractionEstimateCostParams::since_time,
595
+ ?sort: XTwitterScraper::Models::ExtractionEstimateCostParams::sort,
596
+ ?source: String,
597
+ ?start_cursor: String,
248
598
  ?target_community_id: String,
599
+ ?target_community_ids: ::Array[String],
249
600
  ?target_list_id: String,
601
+ ?target_list_ids: ::Array[String],
602
+ ?targets: ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::target],
250
603
  ?target_space_id: String,
251
604
  ?target_tweet_id: String,
605
+ ?target_tweet_ids: ::Array[String],
252
606
  ?target_username: String,
607
+ ?target_usernames: ::Array[String],
253
608
  ?to_user: String,
254
609
  ?until_date: Date,
610
+ ?until_time: XTwitterScraper::Models::ExtractionEstimateCostParams::until_time,
255
611
  ?url: String,
612
+ ?username_contains: String,
256
613
  ?verified_only: bool,
614
+ ?verified_type: String,
615
+ ?within: String,
616
+ ?within_time: String,
257
617
  ?request_options: XTwitterScraper::request_opts
258
618
  ) -> void
259
619
 
@@ -261,42 +621,99 @@ module XTwitterScraper
261
621
  tool_type: XTwitterScraper::Models::ExtractionEstimateCostParams::tool_type,
262
622
  advanced_query: String,
263
623
  any_words: String,
624
+ bio_contains: String,
625
+ blue_verified_only: bool,
264
626
  bounding_box: String,
627
+ card_name: String,
265
628
  cashtags: String,
629
+ collection_strategy: XTwitterScraper::Models::ExtractionEstimateCostParams::collection_strategy,
266
630
  conversation_id: String,
631
+ dedupe_across_targets: bool,
632
+ dedupe_mode: XTwitterScraper::Models::ExtractionEstimateCostParams::dedupe_mode,
267
633
  exact_phrase: String,
634
+ exclude_original_author: bool,
635
+ exclude_source: String,
268
636
  exclude_words: String,
269
637
  from_user: String,
638
+ geocode: String,
270
639
  hashtags: String,
640
+ has_location: bool,
641
+ has_media_only: bool,
642
+ has_website: bool,
643
+ include_original_post: bool,
644
+ include_search_terms: bool,
645
+ include_target_metadata: bool,
271
646
  in_reply_to_tweet_id: String,
272
647
  language: String,
273
648
  list_id: String,
649
+ location_contains: String,
650
+ max_depth: Integer,
651
+ max_followers: Integer,
652
+ max_following: Integer,
653
+ max_id: String,
654
+ max_items_per_target: Integer,
655
+ max_likes: Integer,
656
+ max_pages_per_target: Integer,
657
+ max_posts: Integer,
658
+ max_quotes: Integer,
659
+ max_replies: Integer,
660
+ max_retweets: Integer,
274
661
  media_type: XTwitterScraper::Models::ExtractionEstimateCostParams::media_type,
275
662
  mentioning: String,
663
+ min_account_age_days: Integer,
664
+ min_bookmarks: Integer,
276
665
  min_faves: Integer,
666
+ min_followers: Integer,
667
+ min_following: Integer,
668
+ min_posts: Integer,
277
669
  min_quotes: Integer,
278
670
  min_replies: Integer,
279
671
  min_retweets: Integer,
672
+ min_views: Integer,
673
+ native_retweets: bool,
674
+ near: String,
675
+ news: bool,
676
+ overlap_mode: bool,
280
677
  place: String,
281
678
  place_country: String,
282
679
  point_radius: String,
680
+ query_type: XTwitterScraper::Models::ExtractionEstimateCostParams::query_type,
283
681
  quotes: XTwitterScraper::Models::ExtractionEstimateCostParams::quotes,
284
682
  quotes_of_tweet_id: String,
683
+ relation_targets: ::Array[XTwitterScraper::ExtractionEstimateCostParams::RelationTarget],
285
684
  replies: XTwitterScraper::Models::ExtractionEstimateCostParams::replies,
286
685
  results_limit: Integer,
287
686
  retweets: XTwitterScraper::Models::ExtractionEstimateCostParams::retweets,
288
687
  retweets_of_tweet_id: String,
688
+ safe: bool,
689
+ scope: XTwitterScraper::Models::ExtractionEstimateCostParams::scope,
690
+ search_queries: ::Array[String],
289
691
  search_query: String,
290
692
  since_date: Date,
693
+ since_id: String,
694
+ since_time: XTwitterScraper::Models::ExtractionEstimateCostParams::since_time,
695
+ sort: XTwitterScraper::Models::ExtractionEstimateCostParams::sort,
696
+ source: String,
697
+ start_cursor: String,
291
698
  target_community_id: String,
699
+ target_community_ids: ::Array[String],
292
700
  target_list_id: String,
701
+ target_list_ids: ::Array[String],
702
+ targets: ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::target],
293
703
  target_space_id: String,
294
704
  target_tweet_id: String,
705
+ target_tweet_ids: ::Array[String],
295
706
  target_username: String,
707
+ target_usernames: ::Array[String],
296
708
  to_user: String,
297
709
  until_date: Date,
710
+ until_time: XTwitterScraper::Models::ExtractionEstimateCostParams::until_time,
298
711
  url: String,
712
+ username_contains: String,
299
713
  verified_only: bool,
714
+ verified_type: String,
715
+ within: String,
716
+ within_time: String,
300
717
  request_options: XTwitterScraper::RequestOptions
301
718
  }
302
719
 
@@ -355,6 +772,32 @@ module XTwitterScraper
355
772
  def self?.values: -> ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::tool_type]
356
773
  end
357
774
 
775
+ type collection_strategy = :auto | :complete | :direct | :search | :thread
776
+
777
+ module CollectionStrategy
778
+ extend XTwitterScraper::Internal::Type::Enum
779
+
780
+ AUTO: :auto
781
+ COMPLETE: :complete
782
+ DIRECT: :direct
783
+ SEARCH: :search
784
+ THREAD: :thread
785
+
786
+ def self?.values: -> ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::collection_strategy]
787
+ end
788
+
789
+ type dedupe_mode = :none | :first | :merge
790
+
791
+ module DedupeMode
792
+ extend XTwitterScraper::Internal::Type::Enum
793
+
794
+ NONE: :none
795
+ FIRST: :first
796
+ MERGE: :merge
797
+
798
+ def self?.values: -> ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::dedupe_mode]
799
+ end
800
+
358
801
  type media_type = :images | :videos | :gifs | :media | :links | :none
359
802
 
360
803
  module MediaType
@@ -370,6 +813,18 @@ module XTwitterScraper
370
813
  def self?.values: -> ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::media_type]
371
814
  end
372
815
 
816
+ type query_type = :Latest | :Top | :Both
817
+
818
+ module QueryType
819
+ extend XTwitterScraper::Internal::Type::Enum
820
+
821
+ LATEST: :Latest
822
+ TOP: :Top
823
+ BOTH: :Both
824
+
825
+ def self?.values: -> ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::query_type]
826
+ end
827
+
373
828
  type quotes = :include | :exclude | :only
374
829
 
375
830
  module Quotes
@@ -382,6 +837,49 @@ module XTwitterScraper
382
837
  def self?.values: -> ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::quotes]
383
838
  end
384
839
 
840
+ type relation_target =
841
+ {
842
+ relation: XTwitterScraper::Models::ExtractionEstimateCostParams::RelationTarget::relation,
843
+ value: String
844
+ }
845
+
846
+ class RelationTarget < XTwitterScraper::Internal::Type::BaseModel
847
+ attr_accessor relation: XTwitterScraper::Models::ExtractionEstimateCostParams::RelationTarget::relation
848
+
849
+ attr_accessor value: String
850
+
851
+ def initialize: (
852
+ relation: XTwitterScraper::Models::ExtractionEstimateCostParams::RelationTarget::relation,
853
+ value: String
854
+ ) -> void
855
+
856
+ def to_hash: -> {
857
+ relation: XTwitterScraper::Models::ExtractionEstimateCostParams::RelationTarget::relation,
858
+ value: String
859
+ }
860
+
861
+ type relation =
862
+ :community_members
863
+ | :followers
864
+ | :following
865
+ | :list_followers
866
+ | :list_members
867
+ | :verified_followers
868
+
869
+ module Relation
870
+ extend XTwitterScraper::Internal::Type::Enum
871
+
872
+ COMMUNITY_MEMBERS: :community_members
873
+ FOLLOWERS: :followers
874
+ FOLLOWING: :following
875
+ LIST_FOLLOWERS: :list_followers
876
+ LIST_MEMBERS: :list_members
877
+ VERIFIED_FOLLOWERS: :verified_followers
878
+
879
+ def self?.values: -> ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::RelationTarget::relation]
880
+ end
881
+ end
882
+
385
883
  type replies = :include | :exclude | :only
386
884
 
387
885
  module Replies
@@ -405,6 +903,112 @@ module XTwitterScraper
405
903
 
406
904
  def self?.values: -> ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::retweets]
407
905
  end
906
+
907
+ type scope = :all | :direct | :nested
908
+
909
+ module Scope
910
+ extend XTwitterScraper::Internal::Type::Enum
911
+
912
+ ALL: :all
913
+ DIRECT: :direct
914
+ NESTED: :nested
915
+
916
+ def self?.values: -> ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::scope]
917
+ end
918
+
919
+ type since_time = Time | Integer
920
+
921
+ module SinceTime
922
+ extend XTwitterScraper::Internal::Type::Union
923
+
924
+ def self?.variants: -> ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::since_time]
925
+ end
926
+
927
+ type sort = :relevance | :latest | :oldest | :likes
928
+
929
+ module Sort
930
+ extend XTwitterScraper::Internal::Type::Enum
931
+
932
+ RELEVANCE: :relevance
933
+ LATEST: :latest
934
+ OLDEST: :oldest
935
+ LIKES: :likes
936
+
937
+ def self?.values: -> ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::sort]
938
+ end
939
+
940
+ type target =
941
+ String
942
+ | XTwitterScraper::ExtractionEstimateCostParams::Target::UnionMember1
943
+
944
+ module Target
945
+ extend XTwitterScraper::Internal::Type::Union
946
+
947
+ type union_member1 =
948
+ {
949
+ kind: XTwitterScraper::Models::ExtractionEstimateCostParams::Target::UnionMember1::kind,
950
+ value: String
951
+ }
952
+
953
+ class UnionMember1 < XTwitterScraper::Internal::Type::BaseModel
954
+ attr_accessor kind: XTwitterScraper::Models::ExtractionEstimateCostParams::Target::UnionMember1::kind
955
+
956
+ attr_accessor value: String
957
+
958
+ def initialize: (
959
+ kind: XTwitterScraper::Models::ExtractionEstimateCostParams::Target::UnionMember1::kind,
960
+ value: String
961
+ ) -> void
962
+
963
+ def to_hash: -> {
964
+ kind: XTwitterScraper::Models::ExtractionEstimateCostParams::Target::UnionMember1::kind,
965
+ value: String
966
+ }
967
+
968
+ type kind =
969
+ :favoriters
970
+ | :list
971
+ | :profile
972
+ | :profile_likes
973
+ | :profile_media
974
+ | :profile_replies
975
+ | :quotes
976
+ | :replies
977
+ | :retweeters
978
+ | :search
979
+ | :thread
980
+ | :tweet
981
+
982
+ module Kind
983
+ extend XTwitterScraper::Internal::Type::Enum
984
+
985
+ FAVORITERS: :favoriters
986
+ LIST: :list
987
+ PROFILE: :profile
988
+ PROFILE_LIKES: :profile_likes
989
+ PROFILE_MEDIA: :profile_media
990
+ PROFILE_REPLIES: :profile_replies
991
+ QUOTES: :quotes
992
+ REPLIES: :replies
993
+ RETWEETERS: :retweeters
994
+ SEARCH: :search
995
+ THREAD: :thread
996
+ TWEET: :tweet
997
+
998
+ def self?.values: -> ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::Target::UnionMember1::kind]
999
+ end
1000
+ end
1001
+
1002
+ def self?.variants: -> ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::target]
1003
+ end
1004
+
1005
+ type until_time = Time | Integer
1006
+
1007
+ module UntilTime
1008
+ extend XTwitterScraper::Internal::Type::Union
1009
+
1010
+ def self?.variants: -> ::Array[XTwitterScraper::Models::ExtractionEstimateCostParams::until_time]
1011
+ end
408
1012
  end
409
1013
  end
410
1014
  end