x-twitter-scraper 0.6.0 → 0.7.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 (106) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +12 -0
  3. data/README.md +1 -1
  4. data/lib/x_twitter_scraper/internal/type/union.rb +25 -9
  5. data/lib/x_twitter_scraper/models/content_disclosure.rb +1 -9
  6. data/lib/x_twitter_scraper/models/embedded_tweet.rb +389 -1
  7. data/lib/x_twitter_scraper/models/paginated_tweets.rb +4 -5
  8. data/lib/x_twitter_scraper/models/search_tweet.rb +371 -1
  9. data/lib/x_twitter_scraper/models/support/ticket_list_response.rb +30 -17
  10. data/lib/x_twitter_scraper/models/support/ticket_retrieve_response.rb +49 -24
  11. data/lib/x_twitter_scraper/models/support/ticket_update_response.rb +18 -6
  12. data/lib/x_twitter_scraper/models/trend_list_response.rb +28 -1
  13. data/lib/x_twitter_scraper/models/tweet_media.rb +213 -1
  14. data/lib/x_twitter_scraper/models/user_profile.rb +211 -21
  15. data/lib/x_twitter_scraper/models/x/account_connection_attempt_retrieve_response.rb +60 -26
  16. data/lib/x_twitter_scraper/models/x/account_connection_challenge_submit_response.rb +4 -4
  17. data/lib/x_twitter_scraper/models/x/account_create_response.rb +149 -2
  18. data/lib/x_twitter_scraper/models/x/account_reauth_response.rb +4 -4
  19. data/lib/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rb +3 -5
  20. data/lib/x_twitter_scraper/models/x/communities/tweet_list_params.rb +3 -5
  21. data/lib/x_twitter_scraper/models/x/community_retrieve_info_response.rb +1 -17
  22. data/lib/x_twitter_scraper/models/x/community_retrieve_search_params.rb +3 -5
  23. data/lib/x_twitter_scraper/models/x/list_retrieve_tweets_params.rb +3 -5
  24. data/lib/x_twitter_scraper/models/x/tweet_author.rb +14 -1
  25. data/lib/x_twitter_scraper/models/x/tweet_detail.rb +373 -1
  26. data/lib/x_twitter_scraper/models/x/tweet_get_quotes_params.rb +3 -5
  27. data/lib/x_twitter_scraper/models/x/tweet_get_replies_params.rb +34 -6
  28. data/lib/x_twitter_scraper/models/x/tweet_get_replies_response.rb +345 -0
  29. data/lib/x_twitter_scraper/models/x/tweet_get_thread_params.rb +3 -5
  30. data/lib/x_twitter_scraper/models/x/user_retrieve_likes_params.rb +3 -5
  31. data/lib/x_twitter_scraper/models/x/user_retrieve_media_params.rb +3 -5
  32. data/lib/x_twitter_scraper/models/x/user_retrieve_mentions_params.rb +3 -5
  33. data/lib/x_twitter_scraper/models/x/user_retrieve_replies_params.rb +3 -5
  34. data/lib/x_twitter_scraper/models/x/user_retrieve_tweets_params.rb +3 -5
  35. data/lib/x_twitter_scraper/models/x_get_article_response.rb +1 -7
  36. data/lib/x_twitter_scraper/models/x_get_trends_response.rb +28 -1
  37. data/lib/x_twitter_scraper/resources/x/account_connection_attempts.rb +1 -1
  38. data/lib/x_twitter_scraper/resources/x/accounts.rb +2 -2
  39. data/lib/x_twitter_scraper/resources/x/communities/tweets.rb +2 -2
  40. data/lib/x_twitter_scraper/resources/x/communities.rb +1 -1
  41. data/lib/x_twitter_scraper/resources/x/lists.rb +1 -1
  42. data/lib/x_twitter_scraper/resources/x/tweets.rb +14 -11
  43. data/lib/x_twitter_scraper/resources/x/users.rb +5 -5
  44. data/lib/x_twitter_scraper/version.rb +1 -1
  45. data/lib/x_twitter_scraper.rb +2 -1
  46. data/rbi/x_twitter_scraper/models/content_disclosure.rbi +1 -15
  47. data/rbi/x_twitter_scraper/models/embedded_tweet.rbi +708 -3
  48. data/rbi/x_twitter_scraper/models/paginated_tweets.rbi +4 -5
  49. data/rbi/x_twitter_scraper/models/search_tweet.rbi +674 -3
  50. data/rbi/x_twitter_scraper/models/support/ticket_list_response.rbi +75 -55
  51. data/rbi/x_twitter_scraper/models/support/ticket_retrieve_response.rbi +129 -87
  52. data/rbi/x_twitter_scraper/models/support/ticket_update_response.rbi +62 -13
  53. data/rbi/x_twitter_scraper/models/trend_list_response.rbi +40 -3
  54. data/rbi/x_twitter_scraper/models/tweet_media.rbi +313 -3
  55. data/rbi/x_twitter_scraper/models/user_profile.rbi +340 -29
  56. data/rbi/x_twitter_scraper/models/x/account_connection_attempt_retrieve_response.rbi +61 -83
  57. data/rbi/x_twitter_scraper/models/x/account_connection_challenge_submit_response.rbi +6 -6
  58. data/rbi/x_twitter_scraper/models/x/account_create_response.rbi +264 -2
  59. data/rbi/x_twitter_scraper/models/x/account_reauth_response.rbi +6 -6
  60. data/rbi/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rbi +4 -8
  61. data/rbi/x_twitter_scraper/models/x/communities/tweet_list_params.rbi +4 -8
  62. data/rbi/x_twitter_scraper/models/x/community_retrieve_info_response.rbi +0 -22
  63. data/rbi/x_twitter_scraper/models/x/community_retrieve_search_params.rbi +4 -8
  64. data/rbi/x_twitter_scraper/models/x/list_retrieve_tweets_params.rbi +4 -8
  65. data/rbi/x_twitter_scraper/models/x/tweet_author.rbi +13 -3
  66. data/rbi/x_twitter_scraper/models/x/tweet_detail.rbi +690 -3
  67. data/rbi/x_twitter_scraper/models/x/tweet_get_quotes_params.rbi +4 -8
  68. data/rbi/x_twitter_scraper/models/x/tweet_get_replies_params.rbi +68 -8
  69. data/rbi/x_twitter_scraper/models/x/tweet_get_replies_response.rbi +527 -0
  70. data/rbi/x_twitter_scraper/models/x/tweet_get_thread_params.rbi +4 -8
  71. data/rbi/x_twitter_scraper/models/x/user_retrieve_likes_params.rbi +4 -8
  72. data/rbi/x_twitter_scraper/models/x/user_retrieve_media_params.rbi +4 -8
  73. data/rbi/x_twitter_scraper/models/x/user_retrieve_mentions_params.rbi +4 -8
  74. data/rbi/x_twitter_scraper/models/x/user_retrieve_replies_params.rbi +4 -8
  75. data/rbi/x_twitter_scraper/models/x/user_retrieve_tweets_params.rbi +4 -8
  76. data/rbi/x_twitter_scraper/models/x_get_article_response.rbi +0 -9
  77. data/rbi/x_twitter_scraper/models/x_get_trends_response.rbi +40 -3
  78. data/rbi/x_twitter_scraper/resources/x/accounts.rbi +1 -1
  79. data/rbi/x_twitter_scraper/resources/x/communities/tweets.rbi +4 -8
  80. data/rbi/x_twitter_scraper/resources/x/communities.rbi +2 -4
  81. data/rbi/x_twitter_scraper/resources/x/lists.rbi +2 -4
  82. data/rbi/x_twitter_scraper/resources/x/tweets.rbi +20 -18
  83. data/rbi/x_twitter_scraper/resources/x/users.rbi +10 -20
  84. data/sig/x_twitter_scraper/models/content_disclosure.rbs +1 -11
  85. data/sig/x_twitter_scraper/models/embedded_tweet.rbs +343 -62
  86. data/sig/x_twitter_scraper/models/search_tweet.rbs +333 -70
  87. data/sig/x_twitter_scraper/models/support/ticket_list_response.rbs +29 -32
  88. data/sig/x_twitter_scraper/models/support/ticket_retrieve_response.rbs +49 -48
  89. data/sig/x_twitter_scraper/models/support/ticket_update_response.rbs +25 -7
  90. data/sig/x_twitter_scraper/models/trend_list_response.rbs +16 -20
  91. data/sig/x_twitter_scraper/models/tweet_media.rbs +146 -15
  92. data/sig/x_twitter_scraper/models/user_profile.rbs +164 -86
  93. data/sig/x_twitter_scraper/models/x/account_connection_attempt_retrieve_response.rbs +50 -33
  94. data/sig/x_twitter_scraper/models/x/account_connection_challenge_submit_response.rbs +5 -5
  95. data/sig/x_twitter_scraper/models/x/account_create_response.rbs +147 -1
  96. data/sig/x_twitter_scraper/models/x/account_reauth_response.rbs +5 -5
  97. data/sig/x_twitter_scraper/models/x/community_retrieve_info_response.rbs +0 -14
  98. data/sig/x_twitter_scraper/models/x/tweet_author.rbs +11 -3
  99. data/sig/x_twitter_scraper/models/x/tweet_detail.rbs +333 -70
  100. data/sig/x_twitter_scraper/models/x/tweet_get_replies_params.rbs +26 -0
  101. data/sig/x_twitter_scraper/models/x/tweet_get_replies_response.rbs +274 -0
  102. data/sig/x_twitter_scraper/models/x_get_article_response.rbs +0 -7
  103. data/sig/x_twitter_scraper/models/x_get_trends_response.rbs +25 -3
  104. data/sig/x_twitter_scraper/resources/x/accounts.rbs +1 -1
  105. data/sig/x_twitter_scraper/resources/x/tweets.rbs +3 -1
  106. metadata +4 -1
@@ -4,37 +4,7 @@
4
4
 
5
5
  module XTwitterScraper
6
6
  module Models
7
- type search_tweet =
8
- {
9
- id: String,
10
- bookmark_count: Integer,
11
- like_count: Integer,
12
- quote_count: Integer,
13
- reply_count: Integer,
14
- retweet_count: Integer,
15
- text: String,
16
- view_count: Integer,
17
- author: XTwitterScraper::UserProfile,
18
- content_disclosure: XTwitterScraper::ContentDisclosure,
19
- conversation_id: String,
20
- created_at: String,
21
- display_text_range: ::Array[Integer],
22
- entities: ::Hash[Symbol, top],
23
- in_reply_to_id: String,
24
- in_reply_to_user_id: String,
25
- in_reply_to_username: String,
26
- is_limited_reply: bool,
27
- is_note_tweet: bool,
28
- is_quote_status: bool,
29
- is_reply: bool,
30
- lang: String,
31
- media: ::Array[XTwitterScraper::TweetMedia],
32
- quoted_tweet: XTwitterScraper::EmbeddedTweet,
33
- retweeted_tweet: XTwitterScraper::EmbeddedTweet,
34
- source: String,
35
- type: String,
36
- url: String
37
- }
7
+ type search_tweet = ::Hash[Symbol, top]
38
8
 
39
9
  class SearchTweet < XTwitterScraper::Internal::Type::BaseModel
40
10
  attr_accessor id: String
@@ -53,16 +23,34 @@ module XTwitterScraper
53
23
 
54
24
  attr_accessor view_count: Integer
55
25
 
26
+ attr_reader article: XTwitterScraper::SearchTweet::Article?
27
+
28
+ def article=: (
29
+ XTwitterScraper::SearchTweet::Article | ::Hash[Symbol, top]
30
+ ) -> XTwitterScraper::SearchTweet::Article
31
+
56
32
  attr_reader author: XTwitterScraper::UserProfile?
57
33
 
58
34
  def author=: (
59
- XTwitterScraper::UserProfile
35
+ XTwitterScraper::UserProfile | ::Hash[Symbol, top]
60
36
  ) -> XTwitterScraper::UserProfile
61
37
 
38
+ attr_reader card: XTwitterScraper::SearchTweet::Card?
39
+
40
+ def card=: (
41
+ XTwitterScraper::SearchTweet::Card | ::Hash[Symbol, top]
42
+ ) -> XTwitterScraper::SearchTweet::Card
43
+
44
+ attr_reader community_note: XTwitterScraper::SearchTweet::CommunityNote?
45
+
46
+ def community_note=: (
47
+ XTwitterScraper::SearchTweet::CommunityNote | ::Hash[Symbol, top]
48
+ ) -> XTwitterScraper::SearchTweet::CommunityNote
49
+
62
50
  attr_reader content_disclosure: XTwitterScraper::ContentDisclosure?
63
51
 
64
52
  def content_disclosure=: (
65
- XTwitterScraper::ContentDisclosure
53
+ XTwitterScraper::ContentDisclosure | ::Hash[Symbol, top]
66
54
  ) -> XTwitterScraper::ContentDisclosure
67
55
 
68
56
  attr_reader conversation_id: String?
@@ -77,6 +65,12 @@ module XTwitterScraper
77
65
 
78
66
  def display_text_range=: (::Array[Integer]) -> ::Array[Integer]
79
67
 
68
+ attr_reader edit: XTwitterScraper::SearchTweet::Edit?
69
+
70
+ def edit=: (
71
+ XTwitterScraper::SearchTweet::Edit | ::Hash[Symbol, top]
72
+ ) -> XTwitterScraper::SearchTweet::Edit
73
+
80
74
  attr_reader entities: ::Hash[Symbol, top]?
81
75
 
82
76
  def entities=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
@@ -109,6 +103,10 @@ module XTwitterScraper
109
103
 
110
104
  def is_reply=: (bool) -> bool
111
105
 
106
+ attr_reader is_translatable: bool?
107
+
108
+ def is_translatable=: (bool) -> bool
109
+
112
110
  attr_reader lang: String?
113
111
 
114
112
  def lang=: (String) -> String
@@ -119,16 +117,38 @@ module XTwitterScraper
119
117
  ::Array[XTwitterScraper::TweetMedia]
120
118
  ) -> ::Array[XTwitterScraper::TweetMedia]
121
119
 
120
+ attr_reader note_tweet: XTwitterScraper::SearchTweet::NoteTweet?
121
+
122
+ def note_tweet=: (
123
+ XTwitterScraper::SearchTweet::NoteTweet | ::Hash[Symbol, top]
124
+ ) -> XTwitterScraper::SearchTweet::NoteTweet
125
+
126
+ attr_reader place: XTwitterScraper::SearchTweet::Place?
127
+
128
+ def place=: (
129
+ XTwitterScraper::SearchTweet::Place | ::Hash[Symbol, top]
130
+ ) -> XTwitterScraper::SearchTweet::Place
131
+
132
+ attr_reader possibly_sensitive: bool?
133
+
134
+ def possibly_sensitive=: (bool) -> bool
135
+
136
+ attr_reader previous_counts: XTwitterScraper::SearchTweet::PreviousCounts?
137
+
138
+ def previous_counts=: (
139
+ XTwitterScraper::SearchTweet::PreviousCounts | ::Hash[Symbol, top]
140
+ ) -> XTwitterScraper::SearchTweet::PreviousCounts
141
+
122
142
  attr_reader quoted_tweet: XTwitterScraper::EmbeddedTweet?
123
143
 
124
144
  def quoted_tweet=: (
125
- XTwitterScraper::EmbeddedTweet
145
+ XTwitterScraper::EmbeddedTweet | ::Hash[Symbol, top]
126
146
  ) -> XTwitterScraper::EmbeddedTweet
127
147
 
128
148
  attr_reader retweeted_tweet: XTwitterScraper::EmbeddedTweet?
129
149
 
130
150
  def retweeted_tweet=: (
131
- XTwitterScraper::EmbeddedTweet
151
+ XTwitterScraper::EmbeddedTweet | ::Hash[Symbol, top]
132
152
  ) -> XTwitterScraper::EmbeddedTweet
133
153
 
134
154
  attr_reader source: String?
@@ -143,6 +163,10 @@ module XTwitterScraper
143
163
 
144
164
  def url=: (String) -> String
145
165
 
166
+ attr_reader view_state: String?
167
+
168
+ def view_state=: (String) -> String
169
+
146
170
  def initialize: (
147
171
  id: String,
148
172
  bookmark_count: Integer,
@@ -152,11 +176,15 @@ module XTwitterScraper
152
176
  retweet_count: Integer,
153
177
  text: String,
154
178
  view_count: Integer,
155
- ?author: XTwitterScraper::UserProfile,
156
- ?content_disclosure: XTwitterScraper::ContentDisclosure,
179
+ ?article: XTwitterScraper::SearchTweet::Article | ::Hash[Symbol, top],
180
+ ?author: XTwitterScraper::UserProfile | ::Hash[Symbol, top],
181
+ ?card: XTwitterScraper::SearchTweet::Card | ::Hash[Symbol, top],
182
+ ?community_note: XTwitterScraper::SearchTweet::CommunityNote | ::Hash[Symbol, top],
183
+ ?content_disclosure: XTwitterScraper::ContentDisclosure | ::Hash[Symbol, top],
157
184
  ?conversation_id: String,
158
185
  ?created_at: String,
159
186
  ?display_text_range: ::Array[Integer],
187
+ ?edit: XTwitterScraper::SearchTweet::Edit | ::Hash[Symbol, top],
160
188
  ?entities: ::Hash[Symbol, top],
161
189
  ?in_reply_to_id: String,
162
190
  ?in_reply_to_user_id: String,
@@ -165,45 +193,280 @@ module XTwitterScraper
165
193
  ?is_note_tweet: bool,
166
194
  ?is_quote_status: bool,
167
195
  ?is_reply: bool,
196
+ ?is_translatable: bool,
168
197
  ?lang: String,
169
198
  ?media: ::Array[XTwitterScraper::TweetMedia],
170
- ?quoted_tweet: XTwitterScraper::EmbeddedTweet,
171
- ?retweeted_tweet: XTwitterScraper::EmbeddedTweet,
199
+ ?note_tweet: XTwitterScraper::SearchTweet::NoteTweet | ::Hash[Symbol, top],
200
+ ?place: XTwitterScraper::SearchTweet::Place | ::Hash[Symbol, top],
201
+ ?possibly_sensitive: bool,
202
+ ?previous_counts: XTwitterScraper::SearchTweet::PreviousCounts | ::Hash[Symbol, top],
203
+ ?quoted_tweet: XTwitterScraper::EmbeddedTweet | ::Hash[Symbol, top],
204
+ ?retweeted_tweet: XTwitterScraper::EmbeddedTweet | ::Hash[Symbol, top],
172
205
  ?source: String,
173
206
  ?type: String,
174
- ?url: String
207
+ ?url: String,
208
+ ?view_state: String
175
209
  ) -> void
176
210
 
177
- def to_hash: -> {
178
- id: String,
179
- bookmark_count: Integer,
180
- like_count: Integer,
181
- quote_count: Integer,
182
- reply_count: Integer,
183
- retweet_count: Integer,
184
- text: String,
185
- view_count: Integer,
186
- author: XTwitterScraper::UserProfile,
187
- content_disclosure: XTwitterScraper::ContentDisclosure,
188
- conversation_id: String,
189
- created_at: String,
190
- display_text_range: ::Array[Integer],
191
- entities: ::Hash[Symbol, top],
192
- in_reply_to_id: String,
193
- in_reply_to_user_id: String,
194
- in_reply_to_username: String,
195
- is_limited_reply: bool,
196
- is_note_tweet: bool,
197
- is_quote_status: bool,
198
- is_reply: bool,
199
- lang: String,
200
- media: ::Array[XTwitterScraper::TweetMedia],
201
- quoted_tweet: XTwitterScraper::EmbeddedTweet,
202
- retweeted_tweet: XTwitterScraper::EmbeddedTweet,
203
- source: String,
204
- type: String,
205
- url: String
206
- }
211
+ def to_hash: -> ::Hash[Symbol, top]
212
+
213
+ type article = ::Hash[Symbol, top]
214
+
215
+ class Article < XTwitterScraper::Internal::Type::BaseModel
216
+ attr_reader id: String?
217
+
218
+ def id=: (String) -> String
219
+
220
+ attr_reader cover_media_url: String?
221
+
222
+ def cover_media_url=: (String) -> String
223
+
224
+ attr_reader preview_text: String?
225
+
226
+ def preview_text=: (String) -> String
227
+
228
+ attr_reader title: String?
229
+
230
+ def title=: (String) -> String
231
+
232
+ def initialize: (
233
+ ?id: String,
234
+ ?cover_media_url: String,
235
+ ?preview_text: String,
236
+ ?title: String
237
+ ) -> void
238
+
239
+ def to_hash: -> ::Hash[Symbol, top]
240
+ end
241
+
242
+ type card = ::Hash[Symbol, top]
243
+
244
+ class Card < XTwitterScraper::Internal::Type::BaseModel
245
+ attr_reader id: String?
246
+
247
+ def id=: (String) -> String
248
+
249
+ attr_reader binding_values: ::Hash[Symbol, top]?
250
+
251
+ def binding_values=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
252
+
253
+ attr_reader name: String?
254
+
255
+ def name=: (String) -> String
256
+
257
+ attr_reader url: String?
258
+
259
+ def url=: (String) -> String
260
+
261
+ def initialize: (
262
+ ?id: String,
263
+ ?binding_values: ::Hash[Symbol, top],
264
+ ?name: String,
265
+ ?url: String
266
+ ) -> void
267
+
268
+ def to_hash: -> ::Hash[Symbol, top]
269
+ end
270
+
271
+ type community_note = ::Hash[Symbol, top]
272
+
273
+ class CommunityNote < XTwitterScraper::Internal::Type::BaseModel
274
+ attr_reader id: String?
275
+
276
+ def id=: (String) -> String
277
+
278
+ attr_reader destination_url: String?
279
+
280
+ def destination_url=: (String) -> String
281
+
282
+ attr_reader footer: String?
283
+
284
+ def footer=: (String) -> String
285
+
286
+ attr_reader short_title: String?
287
+
288
+ def short_title=: (String) -> String
289
+
290
+ attr_reader subtitle: String?
291
+
292
+ def subtitle=: (String) -> String
293
+
294
+ attr_reader title: String?
295
+
296
+ def title=: (String) -> String
297
+
298
+ attr_reader visual_style: String?
299
+
300
+ def visual_style=: (String) -> String
301
+
302
+ def initialize: (
303
+ ?id: String,
304
+ ?destination_url: String,
305
+ ?footer: String,
306
+ ?short_title: String,
307
+ ?subtitle: String,
308
+ ?title: String,
309
+ ?visual_style: String
310
+ ) -> void
311
+
312
+ def to_hash: -> ::Hash[Symbol, top]
313
+ end
314
+
315
+ type edit =
316
+ { editable_until_msecs: String, edit_tweet_ids: ::Array[String] }
317
+
318
+ class Edit < XTwitterScraper::Internal::Type::BaseModel
319
+ attr_reader editable_until_msecs: String?
320
+
321
+ def editable_until_msecs=: (String) -> String
322
+
323
+ attr_reader edit_tweet_ids: ::Array[String]?
324
+
325
+ def edit_tweet_ids=: (::Array[String]) -> ::Array[String]
326
+
327
+ def initialize: (
328
+ ?editable_until_msecs: String,
329
+ ?edit_tweet_ids: ::Array[String]
330
+ ) -> void
331
+
332
+ def to_hash: -> ::Hash[Symbol, top]
333
+ end
334
+
335
+ type note_tweet = ::Hash[Symbol, top]
336
+
337
+ class NoteTweet < XTwitterScraper::Internal::Type::BaseModel
338
+ attr_accessor text: String
339
+
340
+ attr_reader id: String?
341
+
342
+ def id=: (String) -> String
343
+
344
+ attr_reader entities: ::Hash[Symbol, top]?
345
+
346
+ def entities=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
347
+
348
+ attr_reader is_expandable: bool?
349
+
350
+ def is_expandable=: (bool) -> bool
351
+
352
+ attr_reader richtext_tags: ::Array[XTwitterScraper::SearchTweet::NoteTweet::RichtextTag]?
353
+
354
+ def richtext_tags=: (
355
+ ::Array[XTwitterScraper::SearchTweet::NoteTweet::RichtextTag]
356
+ ) -> ::Array[XTwitterScraper::SearchTweet::NoteTweet::RichtextTag]
357
+
358
+ def initialize: (
359
+ text: String,
360
+ ?id: String,
361
+ ?entities: ::Hash[Symbol, top],
362
+ ?is_expandable: bool,
363
+ ?richtext_tags: ::Array[XTwitterScraper::SearchTweet::NoteTweet::RichtextTag]
364
+ ) -> void
365
+
366
+ def to_hash: -> ::Hash[Symbol, top]
367
+
368
+ type richtext_tag =
369
+ { from_index: Integer, to_index: Integer, types: ::Array[String] }
370
+
371
+ class RichtextTag < XTwitterScraper::Internal::Type::BaseModel
372
+ attr_accessor from_index: Integer
373
+
374
+ attr_accessor to_index: Integer
375
+
376
+ attr_accessor types: ::Array[String]
377
+
378
+ def initialize: (
379
+ from_index: Integer,
380
+ to_index: Integer,
381
+ types: ::Array[String]
382
+ ) -> void
383
+
384
+ def to_hash: -> ::Hash[Symbol, top]
385
+ end
386
+ end
387
+
388
+ type place = ::Hash[Symbol, top]
389
+
390
+ class Place < XTwitterScraper::Internal::Type::BaseModel
391
+ attr_reader id: String?
392
+
393
+ def id=: (String) -> String
394
+
395
+ attr_reader bounding_box: ::Hash[Symbol, top]?
396
+
397
+ def bounding_box=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
398
+
399
+ attr_reader country: String?
400
+
401
+ def country=: (String) -> String
402
+
403
+ attr_reader country_code: String?
404
+
405
+ def country_code=: (String) -> String
406
+
407
+ attr_reader full_name: String?
408
+
409
+ def full_name=: (String) -> String
410
+
411
+ attr_reader name: String?
412
+
413
+ def name=: (String) -> String
414
+
415
+ attr_reader place_type: String?
416
+
417
+ def place_type=: (String) -> String
418
+
419
+ attr_reader url: String?
420
+
421
+ def url=: (String) -> String
422
+
423
+ def initialize: (
424
+ ?id: String,
425
+ ?bounding_box: ::Hash[Symbol, top],
426
+ ?country: String,
427
+ ?country_code: String,
428
+ ?full_name: String,
429
+ ?name: String,
430
+ ?place_type: String,
431
+ ?url: String
432
+ ) -> void
433
+
434
+ def to_hash: -> ::Hash[Symbol, top]
435
+ end
436
+
437
+ type previous_counts = ::Hash[Symbol, top]
438
+
439
+ class PreviousCounts < XTwitterScraper::Internal::Type::BaseModel
440
+ attr_reader bookmark_count: Integer?
441
+
442
+ def bookmark_count=: (Integer) -> Integer
443
+
444
+ attr_reader like_count: Integer?
445
+
446
+ def like_count=: (Integer) -> Integer
447
+
448
+ attr_reader quote_count: Integer?
449
+
450
+ def quote_count=: (Integer) -> Integer
451
+
452
+ attr_reader reply_count: Integer?
453
+
454
+ def reply_count=: (Integer) -> Integer
455
+
456
+ attr_reader retweet_count: Integer?
457
+
458
+ def retweet_count=: (Integer) -> Integer
459
+
460
+ def initialize: (
461
+ ?bookmark_count: Integer,
462
+ ?like_count: Integer,
463
+ ?quote_count: Integer,
464
+ ?reply_count: Integer,
465
+ ?retweet_count: Integer
466
+ ) -> void
467
+
468
+ def to_hash: -> ::Hash[Symbol, top]
469
+ end
207
470
  end
208
471
  end
209
472
  end
@@ -11,14 +11,10 @@ module XTwitterScraper
11
11
  }
12
12
 
13
13
  class TicketListResponse < XTwitterScraper::Internal::Type::BaseModel
14
- attr_reader tickets: ::Array[XTwitterScraper::Models::Support::TicketListResponse::Ticket]?
15
-
16
- def tickets=: (
17
- ::Array[XTwitterScraper::Models::Support::TicketListResponse::Ticket]
18
- ) -> ::Array[XTwitterScraper::Models::Support::TicketListResponse::Ticket]
14
+ attr_accessor tickets: ::Array[XTwitterScraper::Models::Support::TicketListResponse::Ticket]
19
15
 
20
16
  def initialize: (
21
- ?tickets: ::Array[XTwitterScraper::Models::Support::TicketListResponse::Ticket]
17
+ tickets: ::Array[XTwitterScraper::Models::Support::TicketListResponse::Ticket]
22
18
  ) -> void
23
19
 
24
20
  def to_hash: -> {
@@ -30,53 +26,54 @@ module XTwitterScraper
30
26
  created_at: Time,
31
27
  message_count: Integer,
32
28
  public_id: String,
33
- status: String,
29
+ status: XTwitterScraper::Models::Support::TicketListResponse::Ticket::status,
34
30
  subject: String,
35
31
  updated_at: Time
36
32
  }
37
33
 
38
34
  class Ticket < XTwitterScraper::Internal::Type::BaseModel
39
- attr_reader created_at: Time?
40
-
41
- def created_at=: (Time) -> Time
42
-
43
- attr_reader message_count: Integer?
44
-
45
- def message_count=: (Integer) -> Integer
35
+ attr_accessor created_at: Time
46
36
 
47
- attr_reader public_id: String?
37
+ attr_accessor message_count: Integer
48
38
 
49
- def public_id=: (String) -> String
39
+ attr_accessor public_id: String
50
40
 
51
- attr_reader status: String?
41
+ attr_accessor status: XTwitterScraper::Models::Support::TicketListResponse::Ticket::status
52
42
 
53
- def status=: (String) -> String
43
+ attr_accessor subject: String
54
44
 
55
- attr_reader subject: String?
56
-
57
- def subject=: (String) -> String
58
-
59
- attr_reader updated_at: Time?
60
-
61
- def updated_at=: (Time) -> Time
45
+ attr_accessor updated_at: Time
62
46
 
63
47
  def initialize: (
64
- ?created_at: Time,
65
- ?message_count: Integer,
66
- ?public_id: String,
67
- ?status: String,
68
- ?subject: String,
69
- ?updated_at: Time
48
+ created_at: Time,
49
+ message_count: Integer,
50
+ public_id: String,
51
+ status: XTwitterScraper::Models::Support::TicketListResponse::Ticket::status,
52
+ subject: String,
53
+ updated_at: Time
70
54
  ) -> void
71
55
 
72
56
  def to_hash: -> {
73
57
  created_at: Time,
74
58
  message_count: Integer,
75
59
  public_id: String,
76
- status: String,
60
+ status: XTwitterScraper::Models::Support::TicketListResponse::Ticket::status,
77
61
  subject: String,
78
62
  updated_at: Time
79
63
  }
64
+
65
+ type status = :open | :in_progress | :resolved | :closed
66
+
67
+ module Status
68
+ extend XTwitterScraper::Internal::Type::Enum
69
+
70
+ OPEN: :open
71
+ IN_PROGRESS: :in_progress
72
+ RESOLVED: :resolved
73
+ CLOSED: :closed
74
+
75
+ def self?.values: -> ::Array[XTwitterScraper::Models::Support::TicketListResponse::Ticket::status]
76
+ end
80
77
  end
81
78
  end
82
79
  end