@book000/twitterts 0.22.1 → 0.24.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 (35) hide show
  1. package/dist/generate-types.js +77 -1
  2. package/dist/generate-types.js.map +1 -1
  3. package/dist/index.d.ts +2 -0
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +2 -0
  6. package/dist/index.js.map +1 -1
  7. package/dist/models/responses/custom/custom-timeline-tweet-entry.d.ts +3079 -0
  8. package/dist/models/responses/custom/custom-timeline-tweet-entry.d.ts.map +1 -0
  9. package/dist/models/responses/custom/custom-timeline-tweet-entry.js +4 -0
  10. package/dist/models/responses/custom/custom-timeline-tweet-entry.js.map +1 -0
  11. package/dist/models/responses/custom/custom-tweet-object.d.ts +1417 -998
  12. package/dist/models/responses/custom/custom-tweet-object.d.ts.map +1 -1
  13. package/dist/models/responses/custom/custom-user-like-tweet-entry.d.ts +1 -1
  14. package/dist/models/responses/custom/custom-user-like-tweet-entry.d.ts.map +1 -1
  15. package/dist/options.d.ts +18 -0
  16. package/dist/options.d.ts.map +1 -1
  17. package/dist/options.js +10 -1
  18. package/dist/options.js.map +1 -1
  19. package/dist/parser/home-timeline-parser.d.ts +20 -0
  20. package/dist/parser/home-timeline-parser.d.ts.map +1 -0
  21. package/dist/parser/home-timeline-parser.js +35 -0
  22. package/dist/parser/home-timeline-parser.js.map +1 -0
  23. package/dist/parser/search-timeline.d.ts +5 -5
  24. package/dist/parser/search-timeline.d.ts.map +1 -1
  25. package/dist/parser/search-timeline.js +6 -7
  26. package/dist/parser/search-timeline.js.map +1 -1
  27. package/dist/tsconfig.build.tsbuildinfo +1 -1
  28. package/dist/tsconfig.tsbuildinfo +1 -1
  29. package/dist/twitter.d.ts +23 -2
  30. package/dist/twitter.d.ts.map +1 -1
  31. package/dist/twitter.js +90 -4
  32. package/dist/twitter.js.map +1 -1
  33. package/dist/twitter.test.js +28 -0
  34. package/dist/twitter.test.js.map +1 -1
  35. package/package.json +2 -2
@@ -10,10 +10,16 @@ export interface CustomTweetObject {
10
10
  rest_id: string;
11
11
  affiliates_highlighted_label: {
12
12
  label?: {
13
+ url?: {
14
+ url: string;
15
+ urlType: string;
16
+ };
13
17
  badge: {
14
18
  url: string;
15
19
  };
16
20
  description: string;
21
+ userLabelType: string;
22
+ userLabelDisplayType?: string;
17
23
  longDescription?: {
18
24
  text: string;
19
25
  entities: {
@@ -34,18 +40,14 @@ export interface CustomTweetObject {
34
40
  };
35
41
  }[];
36
42
  };
37
- userLabelType: string;
38
- url?: {
39
- url: string;
40
- urlType: string;
41
- };
42
- userLabelDisplayType?: string;
43
43
  };
44
44
  };
45
45
  has_graduated_access: boolean;
46
46
  is_blue_verified: boolean;
47
47
  profile_image_shape: string;
48
48
  legacy: {
49
+ followed_by?: boolean;
50
+ following?: boolean;
49
51
  can_dm: boolean;
50
52
  can_media_tag: boolean;
51
53
  created_at: string;
@@ -89,14 +91,12 @@ export interface CustomTweetObject {
89
91
  screen_name: string;
90
92
  statuses_count: number;
91
93
  translator_type: string;
92
- url?: string;
93
94
  verified: boolean;
94
95
  want_retweets: boolean;
95
96
  withheld_in_countries: string[];
97
+ url?: string;
96
98
  verified_type?: string;
97
99
  needs_phone_verification?: boolean;
98
- followed_by?: boolean;
99
- following?: boolean;
100
100
  };
101
101
  professional?: {
102
102
  rest_id: string;
@@ -130,8 +130,8 @@ export interface CustomTweetObject {
130
130
  };
131
131
  is_translatable?: boolean;
132
132
  views?: {
133
- count?: string;
134
133
  state: string;
134
+ count?: string;
135
135
  };
136
136
  source?: string;
137
137
  legacy?: {
@@ -141,91 +141,6 @@ export interface CustomTweetObject {
141
141
  conversation_id_str: string;
142
142
  display_text_range: number[];
143
143
  entities: {
144
- media?: {
145
- display_url: string;
146
- expanded_url: string;
147
- id_str: string;
148
- indices: number[];
149
- media_url_https: string;
150
- type: string;
151
- url: string;
152
- features: {
153
- large?: {
154
- faces: {
155
- x: number;
156
- y: number;
157
- h: number;
158
- w: number;
159
- }[];
160
- };
161
- medium?: {
162
- faces: {
163
- x: number;
164
- y: number;
165
- h: number;
166
- w: number;
167
- }[];
168
- };
169
- small?: {
170
- faces: {
171
- x: number;
172
- y: number;
173
- h: number;
174
- w: number;
175
- }[];
176
- };
177
- orig?: {
178
- faces: {
179
- x: number;
180
- y: number;
181
- h: number;
182
- w: number;
183
- }[];
184
- };
185
- all?: {
186
- tags: {
187
- user_id: string;
188
- name: string;
189
- screen_name: string;
190
- type: string;
191
- }[];
192
- };
193
- };
194
- sizes: {
195
- large: {
196
- h: number;
197
- w: number;
198
- resize: string;
199
- };
200
- medium: {
201
- h: number;
202
- w: number;
203
- resize: string;
204
- };
205
- small: {
206
- h: number;
207
- w: number;
208
- resize: string;
209
- };
210
- thumb: {
211
- h: number;
212
- w: number;
213
- resize: string;
214
- };
215
- };
216
- original_info: {
217
- height: number;
218
- width: number;
219
- focus_rects?: {
220
- x: number;
221
- y: number;
222
- w: number;
223
- h: number;
224
- }[];
225
- };
226
- source_status_id_str?: string;
227
- source_user_id_str?: string;
228
- }[];
229
144
  user_mentions: {
230
145
  id_str: string;
231
146
  name: string;
@@ -242,120 +157,18 @@ export interface CustomTweetObject {
242
157
  indices: number[];
243
158
  text: string;
244
159
  }[];
245
- symbols: unknown[];
246
- };
247
- extended_entities?: {
248
- media: {
160
+ symbols: {
161
+ indices: number[];
162
+ text: string;
163
+ }[];
164
+ media?: {
249
165
  display_url: string;
250
166
  expanded_url: string;
251
167
  id_str: string;
252
168
  indices: number[];
253
- media_key: string;
254
169
  media_url_https: string;
255
170
  type: string;
256
171
  url: string;
257
- additional_media_info?: {
258
- title?: string;
259
- description?: string;
260
- embeddable?: boolean;
261
- monetizable: boolean;
262
- source_user?: {
263
- user_results: {
264
- result: {
265
- __typename: string;
266
- id: string;
267
- rest_id: string;
268
- affiliates_highlighted_label: {
269
- label?: {
270
- url: {
271
- url: string;
272
- urlType: string;
273
- };
274
- badge: {
275
- url: string;
276
- };
277
- description: string;
278
- userLabelType: string;
279
- userLabelDisplayType: string;
280
- };
281
- };
282
- has_graduated_access: boolean;
283
- is_blue_verified: boolean;
284
- profile_image_shape: string;
285
- legacy: {
286
- can_dm: boolean;
287
- can_media_tag: boolean;
288
- created_at: string;
289
- default_profile: boolean;
290
- default_profile_image: boolean;
291
- description: string;
292
- entities: {
293
- description: {
294
- urls: {
295
- display_url: string;
296
- expanded_url: string;
297
- url: string;
298
- indices: number[];
299
- }[];
300
- };
301
- url?: {
302
- urls: {
303
- display_url: string;
304
- expanded_url: string;
305
- url: string;
306
- indices: number[];
307
- }[];
308
- };
309
- };
310
- fast_followers_count: number;
311
- favourites_count: number;
312
- followers_count: number;
313
- friends_count: number;
314
- has_custom_timelines: boolean;
315
- is_translator: boolean;
316
- listed_count: number;
317
- location: string;
318
- media_count: number;
319
- name: string;
320
- normal_followers_count: number;
321
- pinned_tweet_ids_str: string[];
322
- possibly_sensitive: boolean;
323
- profile_banner_url: string;
324
- profile_image_url_https: string;
325
- profile_interstitial_type: string;
326
- screen_name: string;
327
- statuses_count: number;
328
- translator_type: string;
329
- verified: boolean;
330
- want_retweets: boolean;
331
- withheld_in_countries: unknown[];
332
- url?: string;
333
- verified_type?: string;
334
- };
335
- professional?: {
336
- rest_id: string;
337
- professional_type: string;
338
- category: {
339
- id: number;
340
- name: string;
341
- icon_name: string;
342
- }[];
343
- };
344
- };
345
- };
346
- };
347
- call_to_actions?: {
348
- visit_site: {
349
- url: string;
350
- };
351
- };
352
- };
353
- mediaStats?: {
354
- viewCount: number;
355
- };
356
- ext_media_availability: {
357
- status: string;
358
- };
359
172
  features: {
360
173
  large?: {
361
174
  faces: {
@@ -430,22 +243,8 @@ export interface CustomTweetObject {
430
243
  h: number;
431
244
  }[];
432
245
  };
433
- video_info?: {
434
- aspect_ratio: number[];
435
- duration_millis?: number;
436
- variants: {
437
- content_type: string;
438
- url: string;
439
- bitrate?: number;
440
- }[];
441
- };
442
246
  source_status_id_str?: string;
443
247
  source_user_id_str?: string;
444
- ext_alt_text?: string;
445
- sensitive_media_warning?: {
446
- other: boolean;
447
- adult_content?: boolean;
448
- };
449
248
  }[];
450
249
  };
451
250
  favorite_count: number;
@@ -453,38 +252,12 @@ export interface CustomTweetObject {
453
252
  full_text: string;
454
253
  is_quote_status: boolean;
455
254
  lang: string;
456
- possibly_sensitive?: boolean;
457
- possibly_sensitive_editable?: boolean;
458
255
  quote_count: number;
459
256
  reply_count: number;
460
257
  retweet_count: number;
461
258
  retweeted: boolean;
462
259
  user_id_str: string;
463
260
  id_str: string;
464
- place?: {
465
- attributes: {};
466
- bounding_box: {
467
- coordinates: number[][][];
468
- type: string;
469
- };
470
- contained_within: unknown[];
471
- country: string;
472
- country_code: string;
473
- full_name: string;
474
- name: string;
475
- id: string;
476
- place_type: string;
477
- url: string;
478
- };
479
- quoted_status_id_str?: string;
480
- quoted_status_permalink?: {
481
- url: string;
482
- expanded: string;
483
- display: string;
484
- };
485
- in_reply_to_screen_name?: string;
486
- in_reply_to_status_id_str?: string;
487
- in_reply_to_user_id_str?: string;
488
261
  retweeted_status_result?: {
489
262
  result: {
490
263
  __typename: string;
@@ -570,16 +343,16 @@ export interface CustomTweetObject {
570
343
  normal_followers_count: number;
571
344
  pinned_tweet_ids_str: string[];
572
345
  possibly_sensitive: boolean;
346
+ profile_banner_url?: string;
573
347
  profile_image_url_https: string;
574
348
  profile_interstitial_type: string;
575
349
  screen_name: string;
576
350
  statuses_count: number;
577
351
  translator_type: string;
578
- url?: string;
579
352
  verified: boolean;
580
353
  want_retweets: boolean;
581
354
  withheld_in_countries: unknown[];
582
- profile_banner_url?: string;
355
+ url?: string;
583
356
  verified_type?: string;
584
357
  };
585
358
  professional?: {
@@ -591,143 +364,11 @@ export interface CustomTweetObject {
591
364
  icon_name: string;
592
365
  }[];
593
366
  };
367
+ has_nft_avatar?: boolean;
594
368
  super_follow_eligible?: boolean;
595
369
  };
596
370
  };
597
371
  };
598
- card?: {
599
- rest_id: string;
600
- legacy: {
601
- binding_values: {
602
- key: string;
603
- value: {
604
- image_value?: {
605
- height: number;
606
- width: number;
607
- url: string;
608
- alt?: string;
609
- };
610
- type: string;
611
- string_value?: string;
612
- scribe_key?: string;
613
- user_value?: {
614
- id_str: string;
615
- path: unknown[];
616
- };
617
- image_color_value?: {
618
- palette: {
619
- rgb: {
620
- blue: number;
621
- green: number;
622
- red: number;
623
- };
624
- percentage: number;
625
- }[];
626
- };
627
- boolean_value?: boolean;
628
- };
629
- }[];
630
- card_platform: {
631
- platform: {
632
- audience: {
633
- name: string;
634
- };
635
- device: {
636
- name: string;
637
- version: string;
638
- };
639
- };
640
- };
641
- name: string;
642
- url: string;
643
- user_refs_results: {
644
- result: {
645
- __typename: string;
646
- id: string;
647
- rest_id: string;
648
- affiliates_highlighted_label: {
649
- label?: {
650
- url: {
651
- url: string;
652
- urlType: string;
653
- };
654
- badge: {
655
- url: string;
656
- };
657
- description: string;
658
- userLabelType: string;
659
- userLabelDisplayType: string;
660
- };
661
- };
662
- has_graduated_access: boolean;
663
- is_blue_verified: boolean;
664
- profile_image_shape: string;
665
- legacy: {
666
- can_dm: boolean;
667
- can_media_tag: boolean;
668
- created_at: string;
669
- default_profile: boolean;
670
- default_profile_image: boolean;
671
- description: string;
672
- entities: {
673
- description: {
674
- urls: {
675
- display_url: string;
676
- expanded_url: string;
677
- url: string;
678
- indices: number[];
679
- }[];
680
- };
681
- url?: {
682
- urls: {
683
- display_url: string;
684
- expanded_url: string;
685
- url: string;
686
- indices: number[];
687
- }[];
688
- };
689
- };
690
- fast_followers_count: number;
691
- favourites_count: number;
692
- followers_count: number;
693
- friends_count: number;
694
- has_custom_timelines: boolean;
695
- is_translator: boolean;
696
- listed_count: number;
697
- location: string;
698
- media_count: number;
699
- name: string;
700
- normal_followers_count: number;
701
- pinned_tweet_ids_str: string[];
702
- possibly_sensitive: boolean;
703
- profile_banner_url: string;
704
- profile_image_url_https: string;
705
- profile_interstitial_type: string;
706
- screen_name: string;
707
- statuses_count: number;
708
- translator_type: string;
709
- url?: string;
710
- verified: boolean;
711
- want_retweets: boolean;
712
- withheld_in_countries: unknown[];
713
- verified_type?: string;
714
- };
715
- professional?: {
716
- rest_id: string;
717
- professional_type: string;
718
- category: {
719
- id: number;
720
- name: string;
721
- icon_name: string;
722
- }[];
723
- };
724
- };
725
- }[];
726
- };
727
- };
728
- unified_card?: {
729
- card_fetch_state: string;
730
- };
731
372
  edit_control: {
732
373
  edit_tweet_ids?: string[];
733
374
  editable_until_msecs?: string;
@@ -747,7 +388,7 @@ export interface CustomTweetObject {
747
388
  };
748
389
  is_translatable: boolean;
749
390
  views: {
750
- count: string;
391
+ count?: string;
751
392
  state: string;
752
393
  };
753
394
  source: string;
@@ -758,23 +399,6 @@ export interface CustomTweetObject {
758
399
  conversation_id_str: string;
759
400
  display_text_range: number[];
760
401
  entities: {
761
- user_mentions: {
762
- id_str: string;
763
- name: string;
764
- screen_name: string;
765
- indices: number[];
766
- }[];
767
- urls: {
768
- display_url: string;
769
- expanded_url: string;
770
- url: string;
771
- indices: number[];
772
- }[];
773
- hashtags: {
774
- indices: number[];
775
- text: string;
776
- }[];
777
- symbols: unknown[];
778
402
  media?: {
779
403
  display_url: string;
780
404
  expanded_url: string;
@@ -860,20 +484,27 @@ export interface CustomTweetObject {
860
484
  source_status_id_str?: string;
861
485
  source_user_id_str?: string;
862
486
  }[];
487
+ user_mentions: {
488
+ id_str: string;
489
+ name: string;
490
+ screen_name: string;
491
+ indices: number[];
492
+ }[];
493
+ urls: {
494
+ display_url: string;
495
+ expanded_url: string;
496
+ url: string;
497
+ indices: number[];
498
+ }[];
499
+ hashtags: {
500
+ indices: number[];
501
+ text: string;
502
+ }[];
503
+ symbols: {
504
+ indices: number[];
505
+ text: string;
506
+ }[];
863
507
  };
864
- favorite_count: number;
865
- favorited: boolean;
866
- full_text: string;
867
- is_quote_status: boolean;
868
- lang: string;
869
- possibly_sensitive?: boolean;
870
- possibly_sensitive_editable?: boolean;
871
- quote_count: number;
872
- reply_count: number;
873
- retweet_count: number;
874
- retweeted: boolean;
875
- user_id_str: string;
876
- id_str: string;
877
508
  extended_entities?: {
878
509
  media: {
879
510
  display_url: string;
@@ -884,6 +515,81 @@ export interface CustomTweetObject {
884
515
  media_url_https: string;
885
516
  type: string;
886
517
  url: string;
518
+ additional_media_info?: {
519
+ monetizable: boolean;
520
+ title?: string;
521
+ description?: string;
522
+ embeddable?: boolean;
523
+ source_user?: {
524
+ user_results: {
525
+ result: {
526
+ __typename: string;
527
+ id: string;
528
+ rest_id: string;
529
+ affiliates_highlighted_label: {};
530
+ has_graduated_access: boolean;
531
+ is_blue_verified: boolean;
532
+ profile_image_shape: string;
533
+ legacy: {
534
+ can_dm: boolean;
535
+ can_media_tag: boolean;
536
+ created_at: string;
537
+ default_profile: boolean;
538
+ default_profile_image: boolean;
539
+ description: string;
540
+ entities: {
541
+ description: {
542
+ urls: unknown[];
543
+ };
544
+ url?: {
545
+ urls: {
546
+ display_url: string;
547
+ expanded_url: string;
548
+ url: string;
549
+ indices: number[];
550
+ }[];
551
+ };
552
+ };
553
+ fast_followers_count: number;
554
+ favourites_count: number;
555
+ followers_count: number;
556
+ friends_count: number;
557
+ has_custom_timelines: boolean;
558
+ is_translator: boolean;
559
+ listed_count: number;
560
+ location: string;
561
+ media_count: number;
562
+ name: string;
563
+ normal_followers_count: number;
564
+ pinned_tweet_ids_str: string[];
565
+ possibly_sensitive: boolean;
566
+ profile_banner_url: string;
567
+ profile_image_url_https: string;
568
+ profile_interstitial_type: string;
569
+ screen_name: string;
570
+ statuses_count: number;
571
+ translator_type: string;
572
+ url?: string;
573
+ verified: boolean;
574
+ want_retweets: boolean;
575
+ withheld_in_countries: unknown[];
576
+ };
577
+ professional?: {
578
+ rest_id: string;
579
+ professional_type: string;
580
+ category: {
581
+ id: number;
582
+ name: string;
583
+ icon_name: string;
584
+ }[];
585
+ };
586
+ };
587
+ };
588
+ };
589
+ };
590
+ mediaStats?: {
591
+ viewCount: number;
592
+ };
887
593
  ext_media_availability: {
888
594
  status: string;
889
595
  };
@@ -961,72 +667,6 @@ export interface CustomTweetObject {
961
667
  h: number;
962
668
  }[];
963
669
  };
964
- additional_media_info?: {
965
- monetizable: boolean;
966
- title?: string;
967
- description?: string;
968
- embeddable?: boolean;
969
- source_user?: {
970
- user_results: {
971
- result: {
972
- __typename: string;
973
- id: string;
974
- rest_id: string;
975
- affiliates_highlighted_label: {};
976
- has_graduated_access: boolean;
977
- is_blue_verified: boolean;
978
- profile_image_shape: string;
979
- legacy: {
980
- can_dm: boolean;
981
- can_media_tag: boolean;
982
- created_at: string;
983
- default_profile: boolean;
984
- default_profile_image: boolean;
985
- description: string;
986
- entities: {
987
- description: {
988
- urls: unknown[];
989
- };
990
- };
991
- fast_followers_count: number;
992
- favourites_count: number;
993
- followers_count: number;
994
- friends_count: number;
995
- has_custom_timelines: boolean;
996
- is_translator: boolean;
997
- listed_count: number;
998
- location: string;
999
- media_count: number;
1000
- name: string;
1001
- normal_followers_count: number;
1002
- pinned_tweet_ids_str: string[];
1003
- possibly_sensitive: boolean;
1004
- profile_banner_url: string;
1005
- profile_image_url_https: string;
1006
- profile_interstitial_type: string;
1007
- screen_name: string;
1008
- statuses_count: number;
1009
- translator_type: string;
1010
- verified: boolean;
1011
- want_retweets: boolean;
1012
- withheld_in_countries: unknown[];
1013
- };
1014
- professional: {
1015
- rest_id: string;
1016
- professional_type: string;
1017
- category: {
1018
- id: number;
1019
- name: string;
1020
- icon_name: string;
1021
- }[];
1022
- };
1023
- };
1024
- };
1025
- };
1026
- };
1027
- mediaStats?: {
1028
- viewCount: number;
1029
- };
1030
670
  video_info?: {
1031
671
  aspect_ratio: number[];
1032
672
  duration_millis?: number;
@@ -1041,18 +681,28 @@ export interface CustomTweetObject {
1041
681
  ext_alt_text?: string;
1042
682
  }[];
1043
683
  };
1044
- in_reply_to_screen_name?: string;
1045
- in_reply_to_status_id_str?: string;
1046
- in_reply_to_user_id_str?: string;
684
+ favorite_count: number;
685
+ favorited: boolean;
686
+ full_text: string;
687
+ is_quote_status: boolean;
688
+ lang: string;
689
+ possibly_sensitive?: boolean;
690
+ possibly_sensitive_editable?: boolean;
691
+ quote_count: number;
692
+ reply_count: number;
693
+ retweet_count: number;
694
+ retweeted: boolean;
695
+ user_id_str: string;
696
+ id_str: string;
1047
697
  quoted_status_id_str?: string;
1048
698
  quoted_status_permalink?: {
1049
699
  url: string;
1050
700
  expanded: string;
1051
701
  display: string;
1052
702
  };
1053
- scopes?: {
1054
- followers: boolean;
1055
- };
703
+ in_reply_to_screen_name?: string;
704
+ in_reply_to_status_id_str?: string;
705
+ in_reply_to_user_id_str?: string;
1056
706
  place?: {
1057
707
  attributes: {};
1058
708
  bounding_box: {
@@ -1068,6 +718,180 @@ export interface CustomTweetObject {
1068
718
  place_type: string;
1069
719
  url: string;
1070
720
  };
721
+ scopes?: {
722
+ followers: boolean;
723
+ };
724
+ };
725
+ note_tweet?: {
726
+ is_expandable: boolean;
727
+ note_tweet_results: {
728
+ result: {
729
+ id: string;
730
+ text: string;
731
+ entity_set: {
732
+ user_mentions: {
733
+ id_str: string;
734
+ name: string;
735
+ screen_name: string;
736
+ indices: number[];
737
+ }[];
738
+ urls: {
739
+ display_url: string;
740
+ expanded_url: string;
741
+ url: string;
742
+ indices: number[];
743
+ }[];
744
+ hashtags: {
745
+ indices: number[];
746
+ text: string;
747
+ }[];
748
+ symbols: unknown[];
749
+ };
750
+ richtext?: {
751
+ richtext_tags: {
752
+ from_index: number;
753
+ to_index: number;
754
+ richtext_types: string[];
755
+ }[];
756
+ };
757
+ media?: {
758
+ inline_media: unknown[];
759
+ };
760
+ };
761
+ };
762
+ };
763
+ card?: {
764
+ rest_id: string;
765
+ legacy: {
766
+ binding_values: {
767
+ key: string;
768
+ value: {
769
+ string_value?: string;
770
+ type: string;
771
+ scribe_key?: string;
772
+ user_value?: {
773
+ id_str: string;
774
+ path: unknown[];
775
+ };
776
+ image_value?: {
777
+ height: number;
778
+ width: number;
779
+ url: string;
780
+ alt?: string;
781
+ };
782
+ image_color_value?: {
783
+ palette: {
784
+ rgb: {
785
+ blue: number;
786
+ green: number;
787
+ red: number;
788
+ };
789
+ percentage: number;
790
+ }[];
791
+ };
792
+ boolean_value?: boolean;
793
+ };
794
+ }[];
795
+ card_platform: {
796
+ platform: {
797
+ audience: {
798
+ name: string;
799
+ };
800
+ device: {
801
+ name: string;
802
+ version: string;
803
+ };
804
+ };
805
+ };
806
+ name: string;
807
+ url: string;
808
+ user_refs_results: {
809
+ result: {
810
+ __typename: string;
811
+ id: string;
812
+ rest_id: string;
813
+ affiliates_highlighted_label: {
814
+ label?: {
815
+ url: {
816
+ url: string;
817
+ urlType: string;
818
+ };
819
+ badge: {
820
+ url: string;
821
+ };
822
+ description: string;
823
+ userLabelType: string;
824
+ userLabelDisplayType: string;
825
+ };
826
+ };
827
+ has_graduated_access: boolean;
828
+ is_blue_verified: boolean;
829
+ profile_image_shape: string;
830
+ legacy: {
831
+ can_dm: boolean;
832
+ can_media_tag: boolean;
833
+ created_at: string;
834
+ default_profile: boolean;
835
+ default_profile_image: boolean;
836
+ description: string;
837
+ entities: {
838
+ description: {
839
+ urls: {
840
+ display_url: string;
841
+ expanded_url: string;
842
+ url: string;
843
+ indices: number[];
844
+ }[];
845
+ };
846
+ url?: {
847
+ urls: {
848
+ display_url: string;
849
+ expanded_url: string;
850
+ url: string;
851
+ indices: number[];
852
+ }[];
853
+ };
854
+ };
855
+ fast_followers_count: number;
856
+ favourites_count: number;
857
+ followers_count: number;
858
+ friends_count: number;
859
+ has_custom_timelines: boolean;
860
+ is_translator: boolean;
861
+ listed_count: number;
862
+ location: string;
863
+ media_count: number;
864
+ name: string;
865
+ normal_followers_count: number;
866
+ pinned_tweet_ids_str: string[];
867
+ possibly_sensitive: boolean;
868
+ profile_banner_url: string;
869
+ profile_image_url_https: string;
870
+ profile_interstitial_type: string;
871
+ screen_name: string;
872
+ statuses_count: number;
873
+ translator_type: string;
874
+ url?: string;
875
+ verified: boolean;
876
+ want_retweets: boolean;
877
+ withheld_in_countries: unknown[];
878
+ verified_type?: string;
879
+ };
880
+ professional?: {
881
+ rest_id: string;
882
+ professional_type: string;
883
+ category: {
884
+ id: number;
885
+ name: string;
886
+ icon_name: string;
887
+ }[];
888
+ };
889
+ };
890
+ }[];
891
+ };
892
+ };
893
+ unified_card?: {
894
+ card_fetch_state: string;
1071
895
  };
1072
896
  quoted_status_result?: {
1073
897
  result: {
@@ -1140,10 +964,12 @@ export interface CustomTweetObject {
1140
964
  screen_name: string;
1141
965
  statuses_count: number;
1142
966
  translator_type: string;
967
+ url?: string;
1143
968
  verified: boolean;
1144
969
  want_retweets: boolean;
1145
970
  withheld_in_countries: unknown[];
1146
- url?: string;
971
+ followed_by?: boolean;
972
+ following?: boolean;
1147
973
  verified_type?: string;
1148
974
  };
1149
975
  professional?: {
@@ -1300,12 +1126,6 @@ export interface CustomTweetObject {
1300
1126
  media_url_https: string;
1301
1127
  type: string;
1302
1128
  url: string;
1303
- additional_media_info?: {
1304
- monetizable: boolean;
1305
- };
1306
- mediaStats?: {
1307
- viewCount: number;
1308
- };
1309
1129
  ext_media_availability: {
1310
1130
  status: string;
1311
1131
  };
@@ -1383,9 +1203,15 @@ export interface CustomTweetObject {
1383
1203
  h: number;
1384
1204
  }[];
1385
1205
  };
1206
+ additional_media_info?: {
1207
+ monetizable: boolean;
1208
+ };
1209
+ mediaStats?: {
1210
+ viewCount: number;
1211
+ };
1386
1212
  video_info?: {
1387
1213
  aspect_ratio: number[];
1388
- duration_millis: number;
1214
+ duration_millis?: number;
1389
1215
  variants: {
1390
1216
  bitrate?: number;
1391
1217
  content_type: string;
@@ -1407,6 +1233,9 @@ export interface CustomTweetObject {
1407
1233
  retweeted: boolean;
1408
1234
  user_id_str: string;
1409
1235
  id_str: string;
1236
+ in_reply_to_screen_name?: string;
1237
+ in_reply_to_status_id_str?: string;
1238
+ in_reply_to_user_id_str?: string;
1410
1239
  quoted_status_id_str?: string;
1411
1240
  quoted_status_permalink?: {
1412
1241
  url: string;
@@ -1428,127 +1257,6 @@ export interface CustomTweetObject {
1428
1257
  place_type: string;
1429
1258
  url: string;
1430
1259
  };
1431
- in_reply_to_screen_name?: string;
1432
- in_reply_to_status_id_str?: string;
1433
- in_reply_to_user_id_str?: string;
1434
- };
1435
- card?: {
1436
- rest_id: string;
1437
- legacy: {
1438
- binding_values: {
1439
- key: string;
1440
- value: {
1441
- image_value?: {
1442
- height: number;
1443
- width: number;
1444
- url: string;
1445
- alt?: string;
1446
- };
1447
- type: string;
1448
- string_value?: string;
1449
- scribe_key?: string;
1450
- user_value?: {
1451
- id_str: string;
1452
- path: unknown[];
1453
- };
1454
- image_color_value?: {
1455
- palette: {
1456
- rgb: {
1457
- blue: number;
1458
- green: number;
1459
- red: number;
1460
- };
1461
- percentage: number;
1462
- }[];
1463
- };
1464
- };
1465
- }[];
1466
- card_platform: {
1467
- platform: {
1468
- audience: {
1469
- name: string;
1470
- };
1471
- device: {
1472
- name: string;
1473
- version: string;
1474
- };
1475
- };
1476
- };
1477
- name: string;
1478
- url: string;
1479
- user_refs_results: {
1480
- result: {
1481
- __typename: string;
1482
- id: string;
1483
- rest_id: string;
1484
- affiliates_highlighted_label: {
1485
- label: {
1486
- url: {
1487
- url: string;
1488
- urlType: string;
1489
- };
1490
- badge: {
1491
- url: string;
1492
- };
1493
- description: string;
1494
- userLabelType: string;
1495
- userLabelDisplayType: string;
1496
- };
1497
- };
1498
- has_graduated_access: boolean;
1499
- is_blue_verified: boolean;
1500
- profile_image_shape: string;
1501
- legacy: {
1502
- can_dm: boolean;
1503
- can_media_tag: boolean;
1504
- created_at: string;
1505
- default_profile: boolean;
1506
- default_profile_image: boolean;
1507
- description: string;
1508
- entities: {
1509
- description: {
1510
- urls: unknown[];
1511
- };
1512
- url: {
1513
- urls: {
1514
- display_url: string;
1515
- expanded_url: string;
1516
- url: string;
1517
- indices: number[];
1518
- }[];
1519
- };
1520
- };
1521
- fast_followers_count: number;
1522
- favourites_count: number;
1523
- followers_count: number;
1524
- friends_count: number;
1525
- has_custom_timelines: boolean;
1526
- is_translator: boolean;
1527
- listed_count: number;
1528
- location: string;
1529
- media_count: number;
1530
- name: string;
1531
- normal_followers_count: number;
1532
- pinned_tweet_ids_str: unknown[];
1533
- possibly_sensitive: boolean;
1534
- profile_banner_url: string;
1535
- profile_image_url_https: string;
1536
- profile_interstitial_type: string;
1537
- screen_name: string;
1538
- statuses_count: number;
1539
- translator_type: string;
1540
- url: string;
1541
- verified: boolean;
1542
- verified_type: string;
1543
- want_retweets: boolean;
1544
- withheld_in_countries: unknown[];
1545
- };
1546
- };
1547
- }[];
1548
- };
1549
- };
1550
- unified_card?: {
1551
- card_fetch_state: string;
1552
1260
  };
1553
1261
  quotedRefResult?: {
1554
1262
  result: {
@@ -1556,53 +1264,6 @@ export interface CustomTweetObject {
1556
1264
  rest_id: string;
1557
1265
  };
1558
1266
  };
1559
- tombstone?: {
1560
- __typename: string;
1561
- text: {
1562
- rtl: boolean;
1563
- text: string;
1564
- entities: {
1565
- fromIndex: number;
1566
- toIndex: number;
1567
- ref: {
1568
- type: string;
1569
- url: string;
1570
- urlType: string;
1571
- };
1572
- }[];
1573
- };
1574
- };
1575
- note_tweet?: {
1576
- is_expandable: boolean;
1577
- note_tweet_results: {
1578
- result: {
1579
- id: string;
1580
- text: string;
1581
- entity_set: {
1582
- user_mentions: unknown[];
1583
- urls: unknown[];
1584
- hashtags: {
1585
- indices: number[];
1586
- text: string;
1587
- }[];
1588
- symbols: unknown[];
1589
- };
1590
- richtext: {
1591
- richtext_tags: unknown[];
1592
- };
1593
- media: {
1594
- inline_media: unknown[];
1595
- };
1596
- };
1597
- };
1598
- };
1599
- previous_counts?: {
1600
- bookmark_count: number;
1601
- favorite_count: number;
1602
- quote_count: number;
1603
- reply_count: number;
1604
- retweet_count: number;
1605
- };
1606
1267
  tweet?: {
1607
1268
  rest_id: string;
1608
1269
  core: {
@@ -1631,6 +1292,14 @@ export interface CustomTweetObject {
1631
1292
  indices: number[];
1632
1293
  }[];
1633
1294
  };
1295
+ url?: {
1296
+ urls: {
1297
+ display_url: string;
1298
+ expanded_url: string;
1299
+ url: string;
1300
+ indices: number[];
1301
+ }[];
1302
+ };
1634
1303
  };
1635
1304
  fast_followers_count: number;
1636
1305
  favourites_count: number;
@@ -1643,7 +1312,7 @@ export interface CustomTweetObject {
1643
1312
  media_count: number;
1644
1313
  name: string;
1645
1314
  normal_followers_count: number;
1646
- pinned_tweet_ids_str: unknown[];
1315
+ pinned_tweet_ids_str: string[];
1647
1316
  possibly_sensitive: boolean;
1648
1317
  profile_banner_url: string;
1649
1318
  profile_image_url_https: string;
@@ -1651,11 +1320,17 @@ export interface CustomTweetObject {
1651
1320
  screen_name: string;
1652
1321
  statuses_count: number;
1653
1322
  translator_type: string;
1323
+ url?: string;
1654
1324
  verified: boolean;
1655
1325
  want_retweets: boolean;
1656
1326
  withheld_in_countries: unknown[];
1657
1327
  };
1658
- super_follow_eligible: boolean;
1328
+ professional?: {
1329
+ rest_id: string;
1330
+ professional_type: string;
1331
+ category: unknown[];
1332
+ };
1333
+ super_follow_eligible?: boolean;
1659
1334
  };
1660
1335
  };
1661
1336
  };
@@ -1693,7 +1368,7 @@ export interface CustomTweetObject {
1693
1368
  conversation_id_str: string;
1694
1369
  display_text_range: number[];
1695
1370
  entities: {
1696
- media: {
1371
+ media?: {
1697
1372
  display_url: string;
1698
1373
  expanded_url: string;
1699
1374
  id_str: string;
@@ -1703,16 +1378,36 @@ export interface CustomTweetObject {
1703
1378
  url: string;
1704
1379
  features: {
1705
1380
  large: {
1706
- faces: unknown[];
1381
+ faces: {
1382
+ x: number;
1383
+ y: number;
1384
+ h: number;
1385
+ w: number;
1386
+ }[];
1707
1387
  };
1708
1388
  medium: {
1709
- faces: unknown[];
1389
+ faces: {
1390
+ x: number;
1391
+ y: number;
1392
+ h: number;
1393
+ w: number;
1394
+ }[];
1710
1395
  };
1711
1396
  small: {
1712
- faces: unknown[];
1397
+ faces: {
1398
+ x: number;
1399
+ y: number;
1400
+ h: number;
1401
+ w: number;
1402
+ }[];
1713
1403
  };
1714
1404
  orig: {
1715
- faces: unknown[];
1405
+ faces: {
1406
+ x: number;
1407
+ y: number;
1408
+ h: number;
1409
+ w: number;
1410
+ }[];
1716
1411
  };
1717
1412
  };
1718
1413
  sizes: {
@@ -1749,11 +1444,19 @@ export interface CustomTweetObject {
1749
1444
  };
1750
1445
  }[];
1751
1446
  user_mentions: unknown[];
1752
- urls: unknown[];
1753
- hashtags: unknown[];
1447
+ urls: {
1448
+ display_url: string;
1449
+ expanded_url: string;
1450
+ url: string;
1451
+ indices: number[];
1452
+ }[];
1453
+ hashtags: {
1454
+ indices: number[];
1455
+ text: string;
1456
+ }[];
1754
1457
  symbols: unknown[];
1755
1458
  };
1756
- extended_entities: {
1459
+ extended_entities?: {
1757
1460
  media: {
1758
1461
  display_url: string;
1759
1462
  expanded_url: string;
@@ -1768,16 +1471,36 @@ export interface CustomTweetObject {
1768
1471
  };
1769
1472
  features: {
1770
1473
  large: {
1771
- faces: unknown[];
1474
+ faces: {
1475
+ x: number;
1476
+ y: number;
1477
+ h: number;
1478
+ w: number;
1479
+ }[];
1772
1480
  };
1773
1481
  medium: {
1774
- faces: unknown[];
1482
+ faces: {
1483
+ x: number;
1484
+ y: number;
1485
+ h: number;
1486
+ w: number;
1487
+ }[];
1775
1488
  };
1776
1489
  small: {
1777
- faces: unknown[];
1490
+ faces: {
1491
+ x: number;
1492
+ y: number;
1493
+ h: number;
1494
+ w: number;
1495
+ }[];
1778
1496
  };
1779
1497
  orig: {
1780
- faces: unknown[];
1498
+ faces: {
1499
+ x: number;
1500
+ y: number;
1501
+ h: number;
1502
+ w: number;
1503
+ }[];
1781
1504
  };
1782
1505
  };
1783
1506
  sizes: {
@@ -1829,6 +1552,51 @@ export interface CustomTweetObject {
1829
1552
  user_id_str: string;
1830
1553
  id_str: string;
1831
1554
  };
1555
+ card?: {
1556
+ rest_id: string;
1557
+ legacy: {
1558
+ binding_values: {
1559
+ key: string;
1560
+ value: {
1561
+ image_value?: {
1562
+ height: number;
1563
+ width: number;
1564
+ url: string;
1565
+ };
1566
+ type: string;
1567
+ string_value?: string;
1568
+ scribe_key?: string;
1569
+ image_color_value?: {
1570
+ palette: {
1571
+ rgb: {
1572
+ blue: number;
1573
+ green: number;
1574
+ red: number;
1575
+ };
1576
+ percentage: number;
1577
+ }[];
1578
+ };
1579
+ };
1580
+ }[];
1581
+ card_platform: {
1582
+ platform: {
1583
+ audience: {
1584
+ name: string;
1585
+ };
1586
+ device: {
1587
+ name: string;
1588
+ version: string;
1589
+ };
1590
+ };
1591
+ };
1592
+ name: string;
1593
+ url: string;
1594
+ user_refs_results: unknown[];
1595
+ };
1596
+ };
1597
+ unified_card?: {
1598
+ card_fetch_state: string;
1599
+ };
1832
1600
  };
1833
1601
  limitedActionResults?: {
1834
1602
  limited_actions: {
@@ -1847,42 +1615,179 @@ export interface CustomTweetObject {
1847
1615
  };
1848
1616
  }[];
1849
1617
  };
1850
- };
1851
- };
1852
- note_tweet?: {
1853
- is_expandable: boolean;
1854
- note_tweet_results: {
1855
- result: {
1856
- id: string;
1857
- text: string;
1858
- entity_set: {
1859
- user_mentions: {
1860
- id_str: string;
1861
- name: string;
1862
- screen_name: string;
1863
- indices: number[];
1864
- }[];
1865
- urls: {
1866
- display_url: string;
1867
- expanded_url: string;
1868
- url: string;
1869
- indices: number[];
1870
- }[];
1871
- hashtags: {
1872
- indices: number[];
1618
+ note_tweet?: {
1619
+ is_expandable: boolean;
1620
+ note_tweet_results: {
1621
+ result: {
1622
+ id: string;
1873
1623
  text: string;
1874
- }[];
1875
- symbols: unknown[];
1624
+ entity_set: {
1625
+ user_mentions: {
1626
+ id_str: string;
1627
+ name: string;
1628
+ screen_name: string;
1629
+ indices: number[];
1630
+ }[];
1631
+ urls: {
1632
+ display_url: string;
1633
+ expanded_url: string;
1634
+ url: string;
1635
+ indices: number[];
1636
+ }[];
1637
+ hashtags: {
1638
+ indices: number[];
1639
+ text: string;
1640
+ }[];
1641
+ symbols: unknown[];
1642
+ };
1643
+ richtext?: {
1644
+ richtext_tags: unknown[];
1645
+ };
1646
+ media?: {
1647
+ inline_media: unknown[];
1648
+ };
1649
+ };
1876
1650
  };
1877
- richtext: {
1878
- richtext_tags: {
1879
- from_index: number;
1880
- to_index: number;
1881
- richtext_types: string[];
1651
+ };
1652
+ card?: {
1653
+ rest_id: string;
1654
+ legacy: {
1655
+ binding_values: {
1656
+ key: string;
1657
+ value: {
1658
+ string_value?: string;
1659
+ type: string;
1660
+ scribe_key?: string;
1661
+ image_value?: {
1662
+ height: number;
1663
+ width: number;
1664
+ url: string;
1665
+ alt?: string;
1666
+ };
1667
+ user_value?: {
1668
+ id_str: string;
1669
+ path: unknown[];
1670
+ };
1671
+ image_color_value?: {
1672
+ palette: {
1673
+ rgb: {
1674
+ blue: number;
1675
+ green: number;
1676
+ red: number;
1677
+ };
1678
+ percentage: number;
1679
+ }[];
1680
+ };
1681
+ };
1682
+ }[];
1683
+ card_platform: {
1684
+ platform: {
1685
+ audience: {
1686
+ name: string;
1687
+ };
1688
+ device: {
1689
+ name: string;
1690
+ version: string;
1691
+ };
1692
+ };
1693
+ };
1694
+ name: string;
1695
+ url: string;
1696
+ user_refs_results: {
1697
+ result: {
1698
+ __typename: string;
1699
+ id: string;
1700
+ rest_id: string;
1701
+ affiliates_highlighted_label: {
1702
+ label?: {
1703
+ url: {
1704
+ url: string;
1705
+ urlType: string;
1706
+ };
1707
+ badge: {
1708
+ url: string;
1709
+ };
1710
+ description: string;
1711
+ userLabelType: string;
1712
+ userLabelDisplayType: string;
1713
+ };
1714
+ };
1715
+ has_graduated_access: boolean;
1716
+ is_blue_verified: boolean;
1717
+ profile_image_shape: string;
1718
+ legacy: {
1719
+ can_dm: boolean;
1720
+ can_media_tag: boolean;
1721
+ created_at: string;
1722
+ default_profile: boolean;
1723
+ default_profile_image: boolean;
1724
+ description: string;
1725
+ entities: {
1726
+ description: {
1727
+ urls: unknown[];
1728
+ };
1729
+ url: {
1730
+ urls: {
1731
+ display_url: string;
1732
+ expanded_url: string;
1733
+ url: string;
1734
+ indices: number[];
1735
+ }[];
1736
+ };
1737
+ };
1738
+ fast_followers_count: number;
1739
+ favourites_count: number;
1740
+ followers_count: number;
1741
+ friends_count: number;
1742
+ has_custom_timelines: boolean;
1743
+ is_translator: boolean;
1744
+ listed_count: number;
1745
+ location: string;
1746
+ media_count: number;
1747
+ name: string;
1748
+ normal_followers_count: number;
1749
+ pinned_tweet_ids_str: unknown[];
1750
+ possibly_sensitive: boolean;
1751
+ profile_banner_url: string;
1752
+ profile_image_url_https: string;
1753
+ profile_interstitial_type: string;
1754
+ screen_name: string;
1755
+ statuses_count: number;
1756
+ translator_type: string;
1757
+ url: string;
1758
+ verified: boolean;
1759
+ want_retweets: boolean;
1760
+ withheld_in_countries: unknown[];
1761
+ verified_type?: string;
1762
+ };
1763
+ };
1882
1764
  }[];
1883
1765
  };
1884
- media: {
1885
- inline_media: unknown[];
1766
+ };
1767
+ unified_card?: {
1768
+ card_fetch_state: string;
1769
+ };
1770
+ previous_counts?: {
1771
+ bookmark_count: number;
1772
+ favorite_count: number;
1773
+ quote_count: number;
1774
+ reply_count: number;
1775
+ retweet_count: number;
1776
+ };
1777
+ tombstone?: {
1778
+ __typename: string;
1779
+ text: {
1780
+ rtl: boolean;
1781
+ text: string;
1782
+ entities: {
1783
+ fromIndex: number;
1784
+ toIndex: number;
1785
+ ref: {
1786
+ type: string;
1787
+ url: string;
1788
+ urlType: string;
1789
+ };
1790
+ }[];
1886
1791
  };
1887
1792
  };
1888
1793
  };
@@ -1896,6 +1801,237 @@ export interface CustomTweetObject {
1896
1801
  };
1897
1802
  };
1898
1803
  };
1804
+ extended_entities?: {
1805
+ media: {
1806
+ display_url: string;
1807
+ expanded_url: string;
1808
+ id_str: string;
1809
+ indices: number[];
1810
+ media_key: string;
1811
+ media_url_https: string;
1812
+ type: string;
1813
+ url: string;
1814
+ additional_media_info?: {
1815
+ monetizable: boolean;
1816
+ source_user?: {
1817
+ user_results: {
1818
+ result: {
1819
+ __typename: string;
1820
+ id: string;
1821
+ rest_id: string;
1822
+ affiliates_highlighted_label: {
1823
+ label?: {
1824
+ url: {
1825
+ url: string;
1826
+ urlType: string;
1827
+ };
1828
+ badge: {
1829
+ url: string;
1830
+ };
1831
+ description: string;
1832
+ userLabelType: string;
1833
+ userLabelDisplayType: string;
1834
+ };
1835
+ };
1836
+ has_graduated_access: boolean;
1837
+ is_blue_verified: boolean;
1838
+ profile_image_shape: string;
1839
+ legacy: {
1840
+ can_dm: boolean;
1841
+ can_media_tag: boolean;
1842
+ created_at: string;
1843
+ default_profile: boolean;
1844
+ default_profile_image: boolean;
1845
+ description: string;
1846
+ entities: {
1847
+ description: {
1848
+ urls: {
1849
+ display_url: string;
1850
+ expanded_url: string;
1851
+ url: string;
1852
+ indices: number[];
1853
+ }[];
1854
+ };
1855
+ url?: {
1856
+ urls: {
1857
+ display_url: string;
1858
+ expanded_url: string;
1859
+ url: string;
1860
+ indices: number[];
1861
+ }[];
1862
+ };
1863
+ };
1864
+ fast_followers_count: number;
1865
+ favourites_count: number;
1866
+ followers_count: number;
1867
+ friends_count: number;
1868
+ has_custom_timelines: boolean;
1869
+ is_translator: boolean;
1870
+ listed_count: number;
1871
+ location: string;
1872
+ media_count: number;
1873
+ name: string;
1874
+ normal_followers_count: number;
1875
+ pinned_tweet_ids_str: string[];
1876
+ possibly_sensitive: boolean;
1877
+ profile_banner_url?: string;
1878
+ profile_image_url_https: string;
1879
+ profile_interstitial_type: string;
1880
+ screen_name: string;
1881
+ statuses_count: number;
1882
+ translator_type: string;
1883
+ verified: boolean;
1884
+ want_retweets: boolean;
1885
+ withheld_in_countries: unknown[];
1886
+ url?: string;
1887
+ verified_type?: string;
1888
+ };
1889
+ professional?: {
1890
+ rest_id: string;
1891
+ professional_type: string;
1892
+ category: {
1893
+ id: number;
1894
+ name: string;
1895
+ icon_name: string;
1896
+ }[];
1897
+ };
1898
+ super_follow_eligible?: boolean;
1899
+ };
1900
+ };
1901
+ };
1902
+ title?: string;
1903
+ description?: string;
1904
+ embeddable?: boolean;
1905
+ call_to_actions?: {
1906
+ visit_site: {
1907
+ url: string;
1908
+ };
1909
+ };
1910
+ };
1911
+ mediaStats?: {
1912
+ viewCount: number;
1913
+ };
1914
+ ext_media_availability: {
1915
+ status: string;
1916
+ };
1917
+ features: {
1918
+ large?: {
1919
+ faces: {
1920
+ x: number;
1921
+ y: number;
1922
+ h: number;
1923
+ w: number;
1924
+ }[];
1925
+ };
1926
+ medium?: {
1927
+ faces: {
1928
+ x: number;
1929
+ y: number;
1930
+ h: number;
1931
+ w: number;
1932
+ }[];
1933
+ };
1934
+ small?: {
1935
+ faces: {
1936
+ x: number;
1937
+ y: number;
1938
+ h: number;
1939
+ w: number;
1940
+ }[];
1941
+ };
1942
+ orig?: {
1943
+ faces: {
1944
+ x: number;
1945
+ y: number;
1946
+ h: number;
1947
+ w: number;
1948
+ }[];
1949
+ };
1950
+ all?: {
1951
+ tags: {
1952
+ user_id: string;
1953
+ name: string;
1954
+ screen_name: string;
1955
+ type: string;
1956
+ }[];
1957
+ };
1958
+ };
1959
+ sizes: {
1960
+ large: {
1961
+ h: number;
1962
+ w: number;
1963
+ resize: string;
1964
+ };
1965
+ medium: {
1966
+ h: number;
1967
+ w: number;
1968
+ resize: string;
1969
+ };
1970
+ small: {
1971
+ h: number;
1972
+ w: number;
1973
+ resize: string;
1974
+ };
1975
+ thumb: {
1976
+ h: number;
1977
+ w: number;
1978
+ resize: string;
1979
+ };
1980
+ };
1981
+ original_info: {
1982
+ height: number;
1983
+ width: number;
1984
+ focus_rects?: {
1985
+ x: number;
1986
+ y: number;
1987
+ w: number;
1988
+ h: number;
1989
+ }[];
1990
+ };
1991
+ video_info?: {
1992
+ aspect_ratio: number[];
1993
+ duration_millis?: number;
1994
+ variants: {
1995
+ bitrate?: number;
1996
+ content_type: string;
1997
+ url: string;
1998
+ }[];
1999
+ };
2000
+ source_status_id_str?: string;
2001
+ source_user_id_str?: string;
2002
+ ext_alt_text?: string;
2003
+ sensitive_media_warning?: {
2004
+ other: boolean;
2005
+ adult_content?: boolean;
2006
+ };
2007
+ }[];
2008
+ };
2009
+ possibly_sensitive?: boolean;
2010
+ possibly_sensitive_editable?: boolean;
2011
+ quoted_status_id_str?: string;
2012
+ quoted_status_permalink?: {
2013
+ url: string;
2014
+ expanded: string;
2015
+ display: string;
2016
+ };
2017
+ place?: {
2018
+ attributes: {};
2019
+ bounding_box: {
2020
+ coordinates: number[][][];
2021
+ type: string;
2022
+ };
2023
+ contained_within: unknown[];
2024
+ country: string;
2025
+ country_code: string;
2026
+ full_name: string;
2027
+ name: string;
2028
+ id: string;
2029
+ place_type: string;
2030
+ url: string;
2031
+ };
2032
+ in_reply_to_screen_name?: string;
2033
+ in_reply_to_status_id_str?: string;
2034
+ in_reply_to_user_id_str?: string;
1899
2035
  coordinates?: {
1900
2036
  type: string;
1901
2037
  coordinates: number[];
@@ -1976,11 +2112,11 @@ export interface CustomTweetObject {
1976
2112
  screen_name: string;
1977
2113
  statuses_count: number;
1978
2114
  translator_type: string;
1979
- url?: string;
1980
2115
  verified: boolean;
1981
2116
  want_retweets: boolean;
1982
2117
  withheld_in_countries: unknown[];
1983
2118
  verified_type?: string;
2119
+ url?: string;
1984
2120
  following?: boolean;
1985
2121
  };
1986
2122
  professional?: {
@@ -2027,6 +2163,23 @@ export interface CustomTweetObject {
2027
2163
  conversation_id_str: string;
2028
2164
  display_text_range: number[];
2029
2165
  entities: {
2166
+ user_mentions: {
2167
+ id_str: string;
2168
+ name: string;
2169
+ screen_name: string;
2170
+ indices: number[];
2171
+ }[];
2172
+ urls: {
2173
+ display_url: string;
2174
+ expanded_url: string;
2175
+ url: string;
2176
+ indices: number[];
2177
+ }[];
2178
+ hashtags: {
2179
+ indices: number[];
2180
+ text: string;
2181
+ }[];
2182
+ symbols: unknown[];
2030
2183
  media?: {
2031
2184
  display_url: string;
2032
2185
  expanded_url: string;
@@ -2110,24 +2263,18 @@ export interface CustomTweetObject {
2110
2263
  }[];
2111
2264
  };
2112
2265
  }[];
2113
- user_mentions: {
2114
- id_str: string;
2115
- name: string;
2116
- screen_name: string;
2117
- indices: number[];
2118
- }[];
2119
- urls: {
2120
- display_url: string;
2121
- expanded_url: string;
2122
- url: string;
2123
- indices: number[];
2124
- }[];
2125
- hashtags: {
2126
- indices: number[];
2127
- text: string;
2128
- }[];
2129
- symbols: unknown[];
2130
2266
  };
2267
+ favorite_count: number;
2268
+ favorited: boolean;
2269
+ full_text: string;
2270
+ is_quote_status: boolean;
2271
+ lang: string;
2272
+ quote_count: number;
2273
+ reply_count: number;
2274
+ retweet_count: number;
2275
+ retweeted: boolean;
2276
+ user_id_str: string;
2277
+ id_str: string;
2131
2278
  extended_entities?: {
2132
2279
  media: {
2133
2280
  display_url: string;
@@ -2138,15 +2285,6 @@ export interface CustomTweetObject {
2138
2285
  media_url_https: string;
2139
2286
  type: string;
2140
2287
  url: string;
2141
- additional_media_info?: {
2142
- monetizable: boolean;
2143
- title?: string;
2144
- description?: string;
2145
- embeddable?: boolean;
2146
- };
2147
- mediaStats?: {
2148
- viewCount: number;
2149
- };
2150
2288
  ext_media_availability: {
2151
2289
  status: string;
2152
2290
  };
@@ -2226,37 +2364,45 @@ export interface CustomTweetObject {
2226
2364
  };
2227
2365
  video_info?: {
2228
2366
  aspect_ratio: number[];
2229
- duration_millis: number;
2230
2367
  variants: {
2231
2368
  bitrate?: number;
2232
2369
  content_type: string;
2233
2370
  url: string;
2234
2371
  }[];
2372
+ duration_millis?: number;
2373
+ };
2374
+ additional_media_info?: {
2375
+ monetizable: boolean;
2376
+ title?: string;
2377
+ description?: string;
2378
+ embeddable?: boolean;
2379
+ };
2380
+ mediaStats?: {
2381
+ viewCount: number;
2235
2382
  };
2383
+ ext_alt_text?: string;
2236
2384
  }[];
2237
2385
  };
2238
- favorite_count: number;
2239
- favorited: boolean;
2240
- full_text: string;
2241
- is_quote_status: boolean;
2242
- lang: string;
2243
2386
  possibly_sensitive?: boolean;
2244
2387
  possibly_sensitive_editable?: boolean;
2245
- quote_count: number;
2246
- reply_count: number;
2247
- retweet_count: number;
2248
- retweeted: boolean;
2249
- user_id_str: string;
2250
- id_str: string;
2251
- in_reply_to_screen_name?: string;
2252
- in_reply_to_status_id_str?: string;
2253
- in_reply_to_user_id_str?: string;
2254
2388
  quoted_status_id_str?: string;
2255
2389
  quoted_status_permalink?: {
2256
2390
  url: string;
2257
2391
  expanded: string;
2258
2392
  display: string;
2259
2393
  };
2394
+ in_reply_to_screen_name?: string;
2395
+ in_reply_to_status_id_str?: string;
2396
+ in_reply_to_user_id_str?: string;
2397
+ };
2398
+ quotedRefResult?: {
2399
+ result: {
2400
+ __typename: string;
2401
+ rest_id?: string;
2402
+ tweet?: {
2403
+ rest_id: string;
2404
+ };
2405
+ };
2260
2406
  };
2261
2407
  note_tweet?: {
2262
2408
  is_expandable: boolean;
@@ -2401,15 +2547,6 @@ export interface CustomTweetObject {
2401
2547
  unified_card?: {
2402
2548
  card_fetch_state: string;
2403
2549
  };
2404
- quotedRefResult?: {
2405
- result: {
2406
- __typename: string;
2407
- rest_id?: string;
2408
- tweet?: {
2409
- rest_id: string;
2410
- };
2411
- };
2412
- };
2413
2550
  tombstone?: {
2414
2551
  __typename: string;
2415
2552
  text: {
@@ -2608,192 +2745,6 @@ export interface CustomTweetObject {
2608
2745
  };
2609
2746
  };
2610
2747
  };
2611
- card?: {
2612
- rest_id: string;
2613
- legacy: {
2614
- binding_values: {
2615
- key: string;
2616
- value: {
2617
- image_value?: {
2618
- alt?: string;
2619
- height: number;
2620
- width: number;
2621
- url: string;
2622
- };
2623
- type: string;
2624
- string_value?: string;
2625
- scribe_key?: string;
2626
- user_value?: {
2627
- id_str: string;
2628
- path: unknown[];
2629
- };
2630
- image_color_value?: {
2631
- palette: {
2632
- rgb: {
2633
- blue: number;
2634
- green: number;
2635
- red: number;
2636
- };
2637
- percentage: number;
2638
- }[];
2639
- };
2640
- boolean_value?: boolean;
2641
- };
2642
- }[];
2643
- card_platform: {
2644
- platform: {
2645
- audience: {
2646
- name: string;
2647
- };
2648
- device: {
2649
- name: string;
2650
- version: string;
2651
- };
2652
- };
2653
- };
2654
- name: string;
2655
- url: string;
2656
- user_refs_results: {
2657
- result?: {
2658
- __typename: string;
2659
- id?: string;
2660
- rest_id?: string;
2661
- affiliates_highlighted_label?: {
2662
- label?: {
2663
- url: {
2664
- url: string;
2665
- urlType: string;
2666
- };
2667
- badge: {
2668
- url: string;
2669
- };
2670
- description: string;
2671
- userLabelType: string;
2672
- userLabelDisplayType: string;
2673
- };
2674
- };
2675
- has_graduated_access?: boolean;
2676
- is_blue_verified?: boolean;
2677
- profile_image_shape?: string;
2678
- legacy?: {
2679
- can_dm: boolean;
2680
- can_media_tag: boolean;
2681
- created_at: string;
2682
- default_profile: boolean;
2683
- default_profile_image: boolean;
2684
- description: string;
2685
- entities: {
2686
- description: {
2687
- urls: {
2688
- display_url: string;
2689
- expanded_url: string;
2690
- url: string;
2691
- indices: number[];
2692
- }[];
2693
- };
2694
- url?: {
2695
- urls: {
2696
- display_url: string;
2697
- expanded_url: string;
2698
- url: string;
2699
- indices: number[];
2700
- }[];
2701
- };
2702
- };
2703
- fast_followers_count: number;
2704
- favourites_count: number;
2705
- followers_count: number;
2706
- friends_count: number;
2707
- has_custom_timelines: boolean;
2708
- is_translator: boolean;
2709
- listed_count: number;
2710
- location: string;
2711
- media_count: number;
2712
- name: string;
2713
- normal_followers_count: number;
2714
- pinned_tweet_ids_str: string[];
2715
- possibly_sensitive: boolean;
2716
- profile_banner_url?: string;
2717
- profile_image_url_https: string;
2718
- profile_interstitial_type: string;
2719
- screen_name: string;
2720
- statuses_count: number;
2721
- translator_type: string;
2722
- url?: string;
2723
- verified: boolean;
2724
- want_retweets: boolean;
2725
- withheld_in_countries: unknown[];
2726
- verified_type?: string;
2727
- followed_by?: boolean;
2728
- following?: boolean;
2729
- blocking?: boolean;
2730
- };
2731
- unavailable_message?: {
2732
- rtl: boolean;
2733
- text: string;
2734
- entities: {
2735
- fromIndex: number;
2736
- toIndex: number;
2737
- ref: {
2738
- type: string;
2739
- url: string;
2740
- urlType: string;
2741
- };
2742
- }[];
2743
- };
2744
- reason?: string;
2745
- professional?: {
2746
- rest_id: string;
2747
- professional_type: string;
2748
- category: {
2749
- id: number;
2750
- name: string;
2751
- icon_name: string;
2752
- }[];
2753
- };
2754
- };
2755
- }[];
2756
- };
2757
- };
2758
- unified_card?: {
2759
- card_fetch_state: string;
2760
- };
2761
- note_tweet?: {
2762
- is_expandable: boolean;
2763
- note_tweet_results: {
2764
- result: {
2765
- id: string;
2766
- text: string;
2767
- entity_set: {
2768
- user_mentions: unknown[];
2769
- urls: {
2770
- display_url: string;
2771
- expanded_url: string;
2772
- url: string;
2773
- indices: number[];
2774
- }[];
2775
- hashtags: {
2776
- indices: number[];
2777
- text: string;
2778
- }[];
2779
- symbols: unknown[];
2780
- };
2781
- richtext?: {
2782
- richtext_tags: {
2783
- from_index: number;
2784
- to_index: number;
2785
- richtext_types: string[];
2786
- }[];
2787
- };
2788
- media?: {
2789
- inline_media: unknown[];
2790
- };
2791
- };
2792
- };
2793
- };
2794
- quick_promote_eligibility?: {
2795
- eligibility: string;
2796
- };
2797
2748
  tweet?: {
2798
2749
  rest_id: string;
2799
2750
  core: {
@@ -2820,7 +2771,7 @@ export interface CustomTweetObject {
2820
2771
  is_blue_verified: boolean;
2821
2772
  profile_image_shape: string;
2822
2773
  legacy: {
2823
- followed_by?: boolean;
2774
+ following?: boolean;
2824
2775
  can_dm: boolean;
2825
2776
  can_media_tag: boolean;
2826
2777
  created_at: string;
@@ -2867,6 +2818,7 @@ export interface CustomTweetObject {
2867
2818
  verified: boolean;
2868
2819
  want_retweets: boolean;
2869
2820
  withheld_in_countries: unknown[];
2821
+ followed_by?: boolean;
2870
2822
  url?: string;
2871
2823
  };
2872
2824
  professional?: {
@@ -3053,9 +3005,14 @@ export interface CustomTweetObject {
3053
3005
  description: string;
3054
3006
  entities: {
3055
3007
  description: {
3056
- urls: unknown[];
3008
+ urls: {
3009
+ display_url: string;
3010
+ expanded_url: string;
3011
+ url: string;
3012
+ indices: number[];
3013
+ }[];
3057
3014
  };
3058
- url: {
3015
+ url?: {
3059
3016
  urls: {
3060
3017
  display_url: string;
3061
3018
  expanded_url: string;
@@ -3083,7 +3040,7 @@ export interface CustomTweetObject {
3083
3040
  screen_name: string;
3084
3041
  statuses_count: number;
3085
3042
  translator_type: string;
3086
- url: string;
3043
+ url?: string;
3087
3044
  verified: boolean;
3088
3045
  want_retweets: boolean;
3089
3046
  withheld_in_countries: unknown[];
@@ -3092,7 +3049,11 @@ export interface CustomTweetObject {
3092
3049
  professional?: {
3093
3050
  rest_id: string;
3094
3051
  professional_type: string;
3095
- category: unknown[];
3052
+ category: {
3053
+ id: number;
3054
+ name: string;
3055
+ icon_name: string;
3056
+ }[];
3096
3057
  };
3097
3058
  };
3098
3059
  };
@@ -3129,17 +3090,8 @@ export interface CustomTweetObject {
3129
3090
  };
3130
3091
  };
3131
3092
  conversation_id_str: string;
3132
- display_text_range: number[];
3133
- entities: {
3134
- user_mentions: unknown[];
3135
- urls: {
3136
- display_url: string;
3137
- expanded_url: string;
3138
- url: string;
3139
- indices: number[];
3140
- }[];
3141
- hashtags: unknown[];
3142
- symbols: unknown[];
3093
+ display_text_range: number[];
3094
+ entities: {
3143
3095
  media?: {
3144
3096
  display_url: string;
3145
3097
  expanded_url: string;
@@ -3149,17 +3101,37 @@ export interface CustomTweetObject {
3149
3101
  type: string;
3150
3102
  url: string;
3151
3103
  features: {
3152
- large: {
3153
- faces: unknown[];
3104
+ large?: {
3105
+ faces: {
3106
+ x: number;
3107
+ y: number;
3108
+ h: number;
3109
+ w: number;
3110
+ }[];
3154
3111
  };
3155
- medium: {
3156
- faces: unknown[];
3112
+ medium?: {
3113
+ faces: {
3114
+ x: number;
3115
+ y: number;
3116
+ h: number;
3117
+ w: number;
3118
+ }[];
3157
3119
  };
3158
- small: {
3159
- faces: unknown[];
3120
+ small?: {
3121
+ faces: {
3122
+ x: number;
3123
+ y: number;
3124
+ h: number;
3125
+ w: number;
3126
+ }[];
3160
3127
  };
3161
- orig: {
3162
- faces: unknown[];
3128
+ orig?: {
3129
+ faces: {
3130
+ x: number;
3131
+ y: number;
3132
+ h: number;
3133
+ w: number;
3134
+ }[];
3163
3135
  };
3164
3136
  };
3165
3137
  sizes: {
@@ -3187,7 +3159,7 @@ export interface CustomTweetObject {
3187
3159
  original_info: {
3188
3160
  height: number;
3189
3161
  width: number;
3190
- focus_rects: {
3162
+ focus_rects?: {
3191
3163
  x: number;
3192
3164
  y: number;
3193
3165
  w: number;
@@ -3195,19 +3167,24 @@ export interface CustomTweetObject {
3195
3167
  }[];
3196
3168
  };
3197
3169
  }[];
3170
+ user_mentions: {
3171
+ id_str: string;
3172
+ name: string;
3173
+ screen_name: string;
3174
+ indices: number[];
3175
+ }[];
3176
+ urls: {
3177
+ display_url: string;
3178
+ expanded_url: string;
3179
+ url: string;
3180
+ indices: number[];
3181
+ }[];
3182
+ hashtags: {
3183
+ indices: number[];
3184
+ text: string;
3185
+ }[];
3186
+ symbols: unknown[];
3198
3187
  };
3199
- favorite_count: number;
3200
- favorited: boolean;
3201
- full_text: string;
3202
- is_quote_status: boolean;
3203
- lang: string;
3204
- limited_actions: string;
3205
- quote_count: number;
3206
- reply_count: number;
3207
- retweet_count: number;
3208
- retweeted: boolean;
3209
- user_id_str: string;
3210
- id_str: string;
3211
3188
  extended_entities?: {
3212
3189
  media: {
3213
3190
  display_url: string;
@@ -3222,17 +3199,37 @@ export interface CustomTweetObject {
3222
3199
  status: string;
3223
3200
  };
3224
3201
  features: {
3225
- large: {
3226
- faces: unknown[];
3202
+ large?: {
3203
+ faces: {
3204
+ x: number;
3205
+ y: number;
3206
+ h: number;
3207
+ w: number;
3208
+ }[];
3227
3209
  };
3228
- medium: {
3229
- faces: unknown[];
3210
+ medium?: {
3211
+ faces: {
3212
+ x: number;
3213
+ y: number;
3214
+ h: number;
3215
+ w: number;
3216
+ }[];
3230
3217
  };
3231
- small: {
3232
- faces: unknown[];
3218
+ small?: {
3219
+ faces: {
3220
+ x: number;
3221
+ y: number;
3222
+ h: number;
3223
+ w: number;
3224
+ }[];
3233
3225
  };
3234
- orig: {
3235
- faces: unknown[];
3226
+ orig?: {
3227
+ faces: {
3228
+ x: number;
3229
+ y: number;
3230
+ h: number;
3231
+ w: number;
3232
+ }[];
3236
3233
  };
3237
3234
  };
3238
3235
  sizes: {
@@ -3260,17 +3257,44 @@ export interface CustomTweetObject {
3260
3257
  original_info: {
3261
3258
  height: number;
3262
3259
  width: number;
3263
- focus_rects: {
3260
+ focus_rects?: {
3264
3261
  x: number;
3265
3262
  y: number;
3266
3263
  w: number;
3267
3264
  h: number;
3268
3265
  }[];
3269
3266
  };
3267
+ additional_media_info?: {
3268
+ monetizable: boolean;
3269
+ };
3270
+ mediaStats?: {
3271
+ viewCount: number;
3272
+ };
3273
+ video_info?: {
3274
+ aspect_ratio: number[];
3275
+ duration_millis: number;
3276
+ variants: {
3277
+ content_type: string;
3278
+ url: string;
3279
+ bitrate?: number;
3280
+ }[];
3281
+ };
3270
3282
  }[];
3271
3283
  };
3284
+ favorite_count: number;
3285
+ favorited: boolean;
3286
+ full_text: string;
3287
+ is_quote_status: boolean;
3288
+ lang: string;
3289
+ limited_actions: string;
3272
3290
  possibly_sensitive?: boolean;
3273
3291
  possibly_sensitive_editable?: boolean;
3292
+ quote_count: number;
3293
+ reply_count: number;
3294
+ retweet_count: number;
3295
+ retweeted: boolean;
3296
+ user_id_str: string;
3297
+ id_str: string;
3274
3298
  };
3275
3299
  note_tweet?: {
3276
3300
  is_expandable: boolean;
@@ -3305,6 +3329,110 @@ export interface CustomTweetObject {
3305
3329
  };
3306
3330
  };
3307
3331
  };
3332
+ card?: {
3333
+ rest_id: string;
3334
+ legacy: {
3335
+ binding_values: {
3336
+ key: string;
3337
+ value: {
3338
+ image_value?: {
3339
+ height: number;
3340
+ width: number;
3341
+ url: string;
3342
+ };
3343
+ type: string;
3344
+ image_color_value?: {
3345
+ palette: {
3346
+ rgb: {
3347
+ blue: number;
3348
+ green: number;
3349
+ red: number;
3350
+ };
3351
+ percentage: number;
3352
+ }[];
3353
+ };
3354
+ scribe_key?: string;
3355
+ user_value?: {
3356
+ id_str: string;
3357
+ path: unknown[];
3358
+ };
3359
+ string_value?: string;
3360
+ };
3361
+ }[];
3362
+ card_platform: {
3363
+ platform: {
3364
+ audience: {
3365
+ name: string;
3366
+ };
3367
+ device: {
3368
+ name: string;
3369
+ version: string;
3370
+ };
3371
+ };
3372
+ };
3373
+ name: string;
3374
+ url: string;
3375
+ user_refs_results: {
3376
+ result: {
3377
+ __typename: string;
3378
+ id: string;
3379
+ rest_id: string;
3380
+ affiliates_highlighted_label: {};
3381
+ has_graduated_access: boolean;
3382
+ is_blue_verified: boolean;
3383
+ profile_image_shape: string;
3384
+ legacy: {
3385
+ can_dm: boolean;
3386
+ can_media_tag: boolean;
3387
+ created_at: string;
3388
+ default_profile: boolean;
3389
+ default_profile_image: boolean;
3390
+ description: string;
3391
+ entities: {
3392
+ description: {
3393
+ urls: unknown[];
3394
+ };
3395
+ url: {
3396
+ urls: {
3397
+ display_url: string;
3398
+ expanded_url: string;
3399
+ url: string;
3400
+ indices: number[];
3401
+ }[];
3402
+ };
3403
+ };
3404
+ fast_followers_count: number;
3405
+ favourites_count: number;
3406
+ followers_count: number;
3407
+ friends_count: number;
3408
+ has_custom_timelines: boolean;
3409
+ is_translator: boolean;
3410
+ listed_count: number;
3411
+ location: string;
3412
+ media_count: number;
3413
+ name: string;
3414
+ normal_followers_count: number;
3415
+ pinned_tweet_ids_str: unknown[];
3416
+ possibly_sensitive: boolean;
3417
+ profile_banner_url: string;
3418
+ profile_image_url_https: string;
3419
+ profile_interstitial_type: string;
3420
+ screen_name: string;
3421
+ statuses_count: number;
3422
+ translator_type: string;
3423
+ url: string;
3424
+ verified: boolean;
3425
+ verified_type: string;
3426
+ want_retweets: boolean;
3427
+ withheld_in_countries: unknown[];
3428
+ };
3429
+ };
3430
+ }[];
3431
+ };
3432
+ };
3433
+ unified_card?: {
3434
+ card_fetch_state: string;
3435
+ };
3308
3436
  };
3309
3437
  limitedActionResults: {
3310
3438
  limited_actions: {
@@ -3398,25 +3526,129 @@ export interface CustomTweetObject {
3398
3526
  w: number;
3399
3527
  resize: string;
3400
3528
  };
3401
- thumb: {
3402
- h: number;
3403
- w: number;
3404
- resize: string;
3529
+ thumb: {
3530
+ h: number;
3531
+ w: number;
3532
+ resize: string;
3533
+ };
3534
+ };
3535
+ original_info: {
3536
+ height: number;
3537
+ width: number;
3538
+ focus_rects: {
3539
+ x: number;
3540
+ y: number;
3541
+ w: number;
3542
+ h: number;
3543
+ }[];
3544
+ };
3545
+ }[];
3546
+ };
3547
+ };
3548
+ card?: {
3549
+ rest_id: string;
3550
+ legacy: {
3551
+ binding_values: {
3552
+ key: string;
3553
+ value: {
3554
+ image_value?: {
3555
+ height: number;
3556
+ width: number;
3557
+ url: string;
3558
+ };
3559
+ type: string;
3560
+ image_color_value?: {
3561
+ palette: {
3562
+ rgb: {
3563
+ blue: number;
3564
+ green: number;
3565
+ red: number;
3566
+ };
3567
+ percentage: number;
3568
+ }[];
3569
+ };
3570
+ scribe_key?: string;
3571
+ user_value?: {
3572
+ id_str: string;
3573
+ path: unknown[];
3574
+ };
3575
+ string_value?: string;
3576
+ };
3577
+ }[];
3578
+ card_platform: {
3579
+ platform: {
3580
+ audience: {
3581
+ name: string;
3582
+ };
3583
+ device: {
3584
+ name: string;
3585
+ version: string;
3405
3586
  };
3406
3587
  };
3407
- original_info: {
3408
- height: number;
3409
- width: number;
3410
- focus_rects: {
3411
- x: number;
3412
- y: number;
3413
- w: number;
3414
- h: number;
3415
- }[];
3588
+ };
3589
+ name: string;
3590
+ url: string;
3591
+ user_refs_results: {
3592
+ result: {
3593
+ __typename: string;
3594
+ id: string;
3595
+ rest_id: string;
3596
+ affiliates_highlighted_label: {};
3597
+ has_graduated_access: boolean;
3598
+ is_blue_verified: boolean;
3599
+ profile_image_shape: string;
3600
+ legacy: {
3601
+ can_dm: boolean;
3602
+ can_media_tag: boolean;
3603
+ created_at: string;
3604
+ default_profile: boolean;
3605
+ default_profile_image: boolean;
3606
+ description: string;
3607
+ entities: {
3608
+ description: {
3609
+ urls: unknown[];
3610
+ };
3611
+ url: {
3612
+ urls: {
3613
+ display_url: string;
3614
+ expanded_url: string;
3615
+ url: string;
3616
+ indices: number[];
3617
+ }[];
3618
+ };
3619
+ };
3620
+ fast_followers_count: number;
3621
+ favourites_count: number;
3622
+ followers_count: number;
3623
+ friends_count: number;
3624
+ has_custom_timelines: boolean;
3625
+ is_translator: boolean;
3626
+ listed_count: number;
3627
+ location: string;
3628
+ media_count: number;
3629
+ name: string;
3630
+ normal_followers_count: number;
3631
+ pinned_tweet_ids_str: unknown[];
3632
+ possibly_sensitive: boolean;
3633
+ profile_banner_url: string;
3634
+ profile_image_url_https: string;
3635
+ profile_interstitial_type: string;
3636
+ screen_name: string;
3637
+ statuses_count: number;
3638
+ translator_type: string;
3639
+ url: string;
3640
+ verified: boolean;
3641
+ verified_type: string;
3642
+ want_retweets: boolean;
3643
+ withheld_in_countries: unknown[];
3644
+ };
3416
3645
  };
3417
3646
  }[];
3418
3647
  };
3419
3648
  };
3649
+ unified_card?: {
3650
+ card_fetch_state: string;
3651
+ };
3420
3652
  quick_promote_eligibility?: {
3421
3653
  eligibility: string;
3422
3654
  };
@@ -3438,6 +3670,193 @@ export interface CustomTweetObject {
3438
3670
  };
3439
3671
  }[];
3440
3672
  };
3673
+ card?: {
3674
+ rest_id: string;
3675
+ legacy: {
3676
+ binding_values: {
3677
+ key: string;
3678
+ value: {
3679
+ string_value?: string;
3680
+ type: string;
3681
+ scribe_key?: string;
3682
+ user_value?: {
3683
+ id_str: string;
3684
+ path: unknown[];
3685
+ };
3686
+ image_value?: {
3687
+ height: number;
3688
+ width: number;
3689
+ url: string;
3690
+ alt?: string;
3691
+ };
3692
+ image_color_value?: {
3693
+ palette: {
3694
+ rgb: {
3695
+ blue: number;
3696
+ green: number;
3697
+ red: number;
3698
+ };
3699
+ percentage: number;
3700
+ }[];
3701
+ };
3702
+ boolean_value?: boolean;
3703
+ };
3704
+ }[];
3705
+ card_platform: {
3706
+ platform: {
3707
+ audience: {
3708
+ name: string;
3709
+ };
3710
+ device: {
3711
+ name: string;
3712
+ version: string;
3713
+ };
3714
+ };
3715
+ };
3716
+ name: string;
3717
+ url: string;
3718
+ user_refs_results: {
3719
+ result?: {
3720
+ __typename: string;
3721
+ id?: string;
3722
+ rest_id?: string;
3723
+ affiliates_highlighted_label?: {
3724
+ label?: {
3725
+ url: {
3726
+ url: string;
3727
+ urlType: string;
3728
+ };
3729
+ badge: {
3730
+ url: string;
3731
+ };
3732
+ description: string;
3733
+ userLabelType: string;
3734
+ userLabelDisplayType: string;
3735
+ };
3736
+ };
3737
+ has_graduated_access?: boolean;
3738
+ is_blue_verified?: boolean;
3739
+ profile_image_shape?: string;
3740
+ legacy?: {
3741
+ can_dm: boolean;
3742
+ can_media_tag: boolean;
3743
+ created_at: string;
3744
+ default_profile: boolean;
3745
+ default_profile_image: boolean;
3746
+ description: string;
3747
+ entities: {
3748
+ description: {
3749
+ urls: {
3750
+ display_url: string;
3751
+ expanded_url: string;
3752
+ url: string;
3753
+ indices: number[];
3754
+ }[];
3755
+ };
3756
+ url?: {
3757
+ urls: {
3758
+ display_url: string;
3759
+ expanded_url: string;
3760
+ url: string;
3761
+ indices: number[];
3762
+ }[];
3763
+ };
3764
+ };
3765
+ fast_followers_count: number;
3766
+ favourites_count: number;
3767
+ followers_count: number;
3768
+ friends_count: number;
3769
+ has_custom_timelines: boolean;
3770
+ is_translator: boolean;
3771
+ listed_count: number;
3772
+ location: string;
3773
+ media_count: number;
3774
+ name: string;
3775
+ normal_followers_count: number;
3776
+ pinned_tweet_ids_str: string[];
3777
+ possibly_sensitive: boolean;
3778
+ profile_banner_url?: string;
3779
+ profile_image_url_https: string;
3780
+ profile_interstitial_type: string;
3781
+ screen_name: string;
3782
+ statuses_count: number;
3783
+ translator_type: string;
3784
+ url?: string;
3785
+ verified: boolean;
3786
+ want_retweets: boolean;
3787
+ withheld_in_countries: unknown[];
3788
+ verified_type?: string;
3789
+ protected?: boolean;
3790
+ followed_by?: boolean;
3791
+ following?: boolean;
3792
+ blocking?: boolean;
3793
+ };
3794
+ professional?: {
3795
+ rest_id: string;
3796
+ professional_type: string;
3797
+ category: {
3798
+ id: number;
3799
+ name: string;
3800
+ icon_name: string;
3801
+ }[];
3802
+ };
3803
+ unavailable_message?: {
3804
+ rtl: boolean;
3805
+ text: string;
3806
+ entities: {
3807
+ fromIndex: number;
3808
+ toIndex: number;
3809
+ ref: {
3810
+ type: string;
3811
+ url: string;
3812
+ urlType: string;
3813
+ };
3814
+ }[];
3815
+ };
3816
+ reason?: string;
3817
+ };
3818
+ }[];
3819
+ };
3820
+ };
3821
+ unified_card?: {
3822
+ card_fetch_state: string;
3823
+ };
3824
+ note_tweet?: {
3825
+ is_expandable: boolean;
3826
+ note_tweet_results: {
3827
+ result: {
3828
+ id: string;
3829
+ text: string;
3830
+ entity_set: {
3831
+ user_mentions: unknown[];
3832
+ urls: {
3833
+ display_url: string;
3834
+ expanded_url: string;
3835
+ url: string;
3836
+ indices: number[];
3837
+ }[];
3838
+ hashtags: {
3839
+ indices: number[];
3840
+ text: string;
3841
+ }[];
3842
+ symbols: unknown[];
3843
+ };
3844
+ richtext?: {
3845
+ richtext_tags: {
3846
+ from_index: number;
3847
+ to_index: number;
3848
+ richtext_types: string[];
3849
+ }[];
3850
+ };
3851
+ media?: {
3852
+ inline_media: unknown[];
3853
+ };
3854
+ };
3855
+ };
3856
+ };
3857
+ quick_promote_eligibility?: {
3858
+ eligibility: string;
3859
+ };
3441
3860
  previous_counts?: {
3442
3861
  bookmark_count: number;
3443
3862
  favorite_count: number;