rettiwt-api 5.0.0-alpha.0 → 5.0.0-alpha.2

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 (465) hide show
  1. package/.eslintrc.js +2 -3
  2. package/.github/workflows/documentation.yml +1 -1
  3. package/.github/workflows/publish-alpha.yml +1 -1
  4. package/.github/workflows/publish.yml +1 -1
  5. package/.prettierignore +1 -1
  6. package/.tool-versions +1 -1
  7. package/README.md +100 -100
  8. package/dist/Rettiwt.d.ts +10 -3
  9. package/dist/Rettiwt.js +31 -12
  10. package/dist/Rettiwt.js.map +1 -1
  11. package/dist/cli.js +8 -11
  12. package/dist/cli.js.map +1 -1
  13. package/dist/collections/Extractors.d.ts +36 -2
  14. package/dist/collections/Extractors.js +41 -69
  15. package/dist/collections/Extractors.js.map +1 -1
  16. package/dist/collections/Groups.js +5 -1
  17. package/dist/collections/Groups.js.map +1 -1
  18. package/dist/collections/Requests.d.ts +3 -3
  19. package/dist/collections/Requests.js +41 -40
  20. package/dist/collections/Requests.js.map +1 -1
  21. package/dist/commands/List.js +21 -78
  22. package/dist/commands/List.js.map +1 -1
  23. package/dist/commands/Tweet.js +214 -373
  24. package/dist/commands/Tweet.js.map +1 -1
  25. package/dist/commands/User.js +138 -305
  26. package/dist/commands/User.js.map +1 -1
  27. package/dist/enums/Authentication.d.ts +10 -0
  28. package/dist/enums/Authentication.js +15 -0
  29. package/dist/enums/Authentication.js.map +1 -0
  30. package/dist/enums/Data.d.ts +3 -3
  31. package/dist/enums/Data.js +3 -3
  32. package/dist/enums/Media.d.ts +10 -0
  33. package/dist/enums/Media.js +15 -0
  34. package/dist/enums/Media.js.map +1 -0
  35. package/dist/enums/Notification.d.ts +12 -0
  36. package/dist/enums/Notification.js +17 -0
  37. package/dist/enums/Notification.js.map +1 -0
  38. package/dist/enums/Resource.d.ts +4 -0
  39. package/dist/enums/Resource.js +4 -0
  40. package/dist/enums/Resource.js.map +1 -1
  41. package/dist/enums/raw/Analytics.d.ts +28 -0
  42. package/dist/enums/raw/Analytics.js +34 -0
  43. package/dist/enums/raw/Analytics.js.map +1 -0
  44. package/dist/enums/raw/Media.d.ts +10 -0
  45. package/dist/enums/raw/Media.js +15 -0
  46. package/dist/enums/raw/Media.js.map +1 -0
  47. package/dist/enums/raw/Notification.d.ts +11 -0
  48. package/dist/enums/raw/Notification.js +16 -0
  49. package/dist/enums/raw/Notification.js.map +1 -0
  50. package/dist/enums/raw/Tweet.d.ts +9 -0
  51. package/dist/enums/raw/Tweet.js +14 -0
  52. package/dist/enums/raw/Tweet.js.map +1 -0
  53. package/dist/helper/CliUtils.js +1 -2
  54. package/dist/helper/CliUtils.js.map +1 -1
  55. package/dist/helper/JsonUtils.js +6 -11
  56. package/dist/helper/JsonUtils.js.map +1 -1
  57. package/dist/helper/TidUtils.d.ts +2 -0
  58. package/dist/helper/TidUtils.js +162 -0
  59. package/dist/helper/TidUtils.js.map +1 -0
  60. package/dist/index.d.ts +75 -5
  61. package/dist/index.js +26 -6
  62. package/dist/index.js.map +1 -1
  63. package/dist/models/RettiwtConfig.d.ts +28 -0
  64. package/dist/models/RettiwtConfig.js +55 -0
  65. package/dist/models/RettiwtConfig.js.map +1 -0
  66. package/dist/models/args/FetchArgs.d.ts +16 -102
  67. package/dist/models/args/FetchArgs.js +105 -407
  68. package/dist/models/args/FetchArgs.js.map +1 -1
  69. package/dist/models/args/PostArgs.d.ts +16 -73
  70. package/dist/models/args/PostArgs.js +43 -236
  71. package/dist/models/args/PostArgs.js.map +1 -1
  72. package/dist/models/auth/AuthCookie.d.ts +21 -0
  73. package/dist/models/auth/AuthCookie.js +55 -0
  74. package/dist/models/auth/AuthCookie.js.map +1 -0
  75. package/dist/models/auth/AuthCredential.d.ts +30 -0
  76. package/dist/models/auth/AuthCredential.js +78 -0
  77. package/dist/models/auth/AuthCredential.js.map +1 -0
  78. package/dist/models/data/CursoredData.d.ts +5 -15
  79. package/dist/models/data/CursoredData.js +25 -32
  80. package/dist/models/data/CursoredData.js.map +1 -1
  81. package/dist/models/data/List.d.ts +7 -9
  82. package/dist/models/data/List.js +24 -4
  83. package/dist/models/data/List.js.map +1 -1
  84. package/dist/models/data/Notification.d.ts +10 -24
  85. package/dist/models/data/Notification.js +38 -36
  86. package/dist/models/data/Notification.js.map +1 -1
  87. package/dist/models/data/Tweet.d.ts +34 -31
  88. package/dist/models/data/Tweet.js +186 -112
  89. package/dist/models/data/Tweet.js.map +1 -1
  90. package/dist/models/data/User.d.ts +19 -23
  91. package/dist/models/data/User.js +92 -32
  92. package/dist/models/data/User.js.map +1 -1
  93. package/dist/models/errors/ApiError.js +8 -24
  94. package/dist/models/errors/ApiError.js.map +1 -1
  95. package/dist/models/errors/HttpError.js +8 -24
  96. package/dist/models/errors/HttpError.js.map +1 -1
  97. package/dist/models/errors/RettiwtError.d.ts +3 -2
  98. package/dist/models/errors/RettiwtError.js +8 -25
  99. package/dist/models/errors/RettiwtError.js.map +1 -1
  100. package/dist/models/errors/TimeoutError.js +5 -22
  101. package/dist/models/errors/TimeoutError.js.map +1 -1
  102. package/dist/models/params/Variables.d.ts +41 -0
  103. package/dist/models/params/Variables.js +61 -0
  104. package/dist/models/params/Variables.js.map +1 -0
  105. package/dist/requests/List.d.ts +24 -0
  106. package/dist/requests/List.js +122 -0
  107. package/dist/requests/List.js.map +1 -0
  108. package/dist/requests/Media.d.ts +21 -0
  109. package/dist/requests/Media.js +70 -0
  110. package/dist/requests/Media.js.map +1 -0
  111. package/dist/requests/Tweet.d.ts +75 -0
  112. package/dist/requests/Tweet.js +480 -0
  113. package/dist/requests/Tweet.js.map +1 -0
  114. package/dist/requests/User.d.ts +111 -0
  115. package/dist/requests/User.js +762 -0
  116. package/dist/requests/User.js.map +1 -0
  117. package/dist/services/internal/AuthService.d.ts +60 -0
  118. package/dist/services/internal/AuthService.js +106 -0
  119. package/dist/services/internal/AuthService.js.map +1 -0
  120. package/dist/services/internal/ErrorService.js +38 -40
  121. package/dist/services/internal/ErrorService.js.map +1 -1
  122. package/dist/services/internal/LogService.d.ts +0 -6
  123. package/dist/services/internal/LogService.js +12 -32
  124. package/dist/services/internal/LogService.js.map +1 -1
  125. package/dist/services/internal/TidService.d.ts +44 -0
  126. package/dist/services/internal/TidService.js +162 -0
  127. package/dist/services/internal/TidService.js.map +1 -0
  128. package/dist/services/public/FetcherService.d.ts +22 -19
  129. package/dist/services/public/FetcherService.js +126 -153
  130. package/dist/services/public/FetcherService.js.map +1 -1
  131. package/dist/services/public/ListService.d.ts +2 -2
  132. package/dist/services/public/ListService.js +31 -100
  133. package/dist/services/public/ListService.js.map +1 -1
  134. package/dist/services/public/TweetService.d.ts +63 -10
  135. package/dist/services/public/TweetService.js +255 -387
  136. package/dist/services/public/TweetService.js.map +1 -1
  137. package/dist/services/public/UserService.d.ts +4 -4
  138. package/dist/services/public/UserService.js +199 -386
  139. package/dist/services/public/UserService.js.map +1 -1
  140. package/dist/types/RettiwtConfig.d.ts +17 -10
  141. package/dist/types/args/FetchArgs.d.ts +123 -0
  142. package/dist/types/{ReturnTypes.js → args/FetchArgs.js} +1 -1
  143. package/dist/types/args/FetchArgs.js.map +1 -0
  144. package/dist/types/args/PostArgs.d.ts +100 -0
  145. package/dist/types/args/PostArgs.js +3 -0
  146. package/dist/types/args/PostArgs.js.map +1 -0
  147. package/dist/types/auth/AuthCookie.d.ts +15 -0
  148. package/dist/types/auth/AuthCookie.js +3 -0
  149. package/dist/types/auth/AuthCookie.js.map +1 -0
  150. package/dist/types/auth/AuthCredential.d.ts +23 -0
  151. package/dist/types/auth/AuthCredential.js +3 -0
  152. package/dist/types/auth/AuthCredential.js.map +1 -0
  153. package/dist/types/auth/TidDynamicArgs.d.ts +10 -0
  154. package/dist/types/auth/TidDynamicArgs.js +3 -0
  155. package/dist/types/auth/TidDynamicArgs.js.map +1 -0
  156. package/dist/types/auth/TidHeader.d.ts +8 -0
  157. package/dist/types/auth/TidHeader.js +3 -0
  158. package/dist/types/auth/TidHeader.js.map +1 -0
  159. package/dist/types/auth/TidParams.d.ts +27 -0
  160. package/dist/types/auth/TidParams.js +3 -0
  161. package/dist/types/auth/TidParams.js.map +1 -0
  162. package/dist/types/auth/TidProvider.d.ts +18 -0
  163. package/dist/types/auth/TidProvider.js +3 -0
  164. package/dist/types/auth/TidProvider.js.map +1 -0
  165. package/dist/types/data/CursoredData.d.ts +16 -0
  166. package/dist/types/data/CursoredData.js +3 -0
  167. package/dist/types/data/CursoredData.js.map +1 -0
  168. package/dist/types/data/List.d.ts +21 -0
  169. package/dist/types/data/List.js +3 -0
  170. package/dist/types/data/List.js.map +1 -0
  171. package/dist/types/data/Notification.d.ts +20 -0
  172. package/dist/types/data/Notification.js +3 -0
  173. package/dist/types/data/Notification.js.map +1 -0
  174. package/dist/types/data/Tweet.d.ts +71 -0
  175. package/dist/types/data/Tweet.js +3 -0
  176. package/dist/types/data/Tweet.js.map +1 -0
  177. package/dist/types/data/User.d.ts +35 -0
  178. package/dist/types/data/User.js +3 -0
  179. package/dist/types/data/User.js.map +1 -0
  180. package/dist/types/params/Variables.d.ts +27 -0
  181. package/dist/types/params/Variables.js +3 -0
  182. package/dist/types/params/Variables.js.map +1 -0
  183. package/dist/types/raw/base/Analytic.d.ts +21 -0
  184. package/dist/types/raw/base/Analytic.js +4 -0
  185. package/dist/types/raw/base/Analytic.js.map +1 -0
  186. package/dist/types/raw/base/Cursor.d.ts +11 -0
  187. package/dist/types/raw/base/Cursor.js +4 -0
  188. package/dist/types/raw/base/Cursor.js.map +1 -0
  189. package/dist/types/raw/base/LimitedVisibilityTweet.d.ts +32 -0
  190. package/dist/types/raw/base/LimitedVisibilityTweet.js +4 -0
  191. package/dist/types/raw/base/LimitedVisibilityTweet.js.map +1 -0
  192. package/dist/types/raw/base/List.d.ts +43 -0
  193. package/dist/types/raw/base/List.js +4 -0
  194. package/dist/types/raw/base/List.js.map +1 -0
  195. package/dist/types/raw/base/Media.d.ts +43 -0
  196. package/dist/types/raw/base/Media.js +4 -0
  197. package/dist/types/raw/base/Media.js.map +1 -0
  198. package/dist/types/raw/base/Notification.d.ts +53 -0
  199. package/dist/types/raw/base/Notification.js +4 -0
  200. package/dist/types/raw/base/Notification.js.map +1 -0
  201. package/dist/types/raw/base/Space.d.ts +32 -0
  202. package/dist/types/raw/base/Space.js +4 -0
  203. package/dist/types/raw/base/Space.js.map +1 -0
  204. package/dist/types/raw/base/Tweet.d.ts +119 -0
  205. package/dist/types/raw/base/Tweet.js +4 -0
  206. package/dist/types/raw/base/Tweet.js.map +1 -0
  207. package/dist/types/raw/base/User.d.ts +140 -0
  208. package/dist/types/raw/base/User.js +4 -0
  209. package/dist/types/raw/base/User.js.map +1 -0
  210. package/dist/types/raw/composite/DataResult.d.ts +8 -0
  211. package/dist/types/raw/composite/DataResult.js +3 -0
  212. package/dist/types/raw/composite/DataResult.js.map +1 -0
  213. package/dist/types/raw/composite/TimelineTweet.d.ts +11 -0
  214. package/dist/types/raw/composite/TimelineTweet.js +4 -0
  215. package/dist/types/raw/composite/TimelineTweet.js.map +1 -0
  216. package/dist/types/raw/composite/TimelineUser.d.ts +10 -0
  217. package/dist/types/raw/composite/TimelineUser.js +4 -0
  218. package/dist/types/raw/composite/TimelineUser.js.map +1 -0
  219. package/dist/types/raw/generic/Error.d.ts +30 -0
  220. package/dist/types/raw/generic/Error.js +3 -0
  221. package/dist/types/raw/generic/Error.js.map +1 -0
  222. package/dist/types/raw/generic/Response.d.ts +12 -0
  223. package/dist/types/raw/generic/Response.js +3 -0
  224. package/dist/types/raw/generic/Response.js.map +1 -0
  225. package/dist/types/raw/list/Details.d.ts +122 -0
  226. package/dist/types/raw/list/Details.js +4 -0
  227. package/dist/types/raw/list/Details.js.map +1 -0
  228. package/dist/types/raw/list/Members.d.ts +134 -0
  229. package/dist/types/raw/list/Members.js +4 -0
  230. package/dist/types/raw/list/Members.js.map +1 -0
  231. package/dist/types/raw/list/Tweets.d.ts +1968 -0
  232. package/dist/types/raw/list/Tweets.js +4 -0
  233. package/dist/types/raw/list/Tweets.js.map +1 -0
  234. package/dist/types/raw/media/FinalizeUpload.d.ts +18 -0
  235. package/dist/types/raw/media/FinalizeUpload.js +4 -0
  236. package/dist/types/raw/media/FinalizeUpload.js.map +1 -0
  237. package/dist/types/raw/media/InitalizeUpload.d.ts +10 -0
  238. package/dist/types/raw/media/InitalizeUpload.js +4 -0
  239. package/dist/types/raw/media/InitalizeUpload.js.map +1 -0
  240. package/dist/types/raw/media/LiveVideoStream.d.ts +19 -0
  241. package/dist/types/raw/media/LiveVideoStream.js +4 -0
  242. package/dist/types/raw/media/LiveVideoStream.js.map +1 -0
  243. package/dist/types/raw/space/Details.d.ts +315 -0
  244. package/dist/types/raw/space/Details.js +4 -0
  245. package/dist/types/raw/space/Details.js.map +1 -0
  246. package/dist/types/raw/tweet/Details.d.ts +183 -0
  247. package/dist/types/raw/tweet/Details.js +4 -0
  248. package/dist/types/raw/tweet/Details.js.map +1 -0
  249. package/dist/types/raw/tweet/Like.d.ts +12 -0
  250. package/dist/types/raw/tweet/Like.js +4 -0
  251. package/dist/types/raw/tweet/Like.js.map +1 -0
  252. package/dist/types/raw/tweet/Likers.d.ts +170 -0
  253. package/dist/types/raw/tweet/Likers.js +4 -0
  254. package/dist/types/raw/tweet/Likers.js.map +1 -0
  255. package/dist/types/raw/tweet/Post.d.ts +133 -0
  256. package/dist/types/raw/tweet/Post.js +4 -0
  257. package/dist/types/raw/tweet/Post.js.map +1 -0
  258. package/dist/types/raw/tweet/Replies.d.ts +465 -0
  259. package/dist/types/raw/tweet/Replies.js +4 -0
  260. package/dist/types/raw/tweet/Replies.js.map +1 -0
  261. package/dist/types/raw/tweet/Retweet.d.ts +25 -0
  262. package/dist/types/raw/tweet/Retweet.js +4 -0
  263. package/dist/types/raw/tweet/Retweet.js.map +1 -0
  264. package/dist/types/raw/tweet/Retweeters.d.ts +177 -0
  265. package/dist/types/raw/tweet/Retweeters.js +4 -0
  266. package/dist/types/raw/tweet/Retweeters.js.map +1 -0
  267. package/dist/types/raw/tweet/Schedule.d.ts +15 -0
  268. package/dist/types/raw/tweet/Schedule.js +4 -0
  269. package/dist/types/raw/tweet/Schedule.js.map +1 -0
  270. package/dist/types/raw/tweet/Search.d.ts +518 -0
  271. package/dist/types/raw/tweet/Search.js +4 -0
  272. package/dist/types/raw/tweet/Search.js.map +1 -0
  273. package/dist/types/raw/tweet/Unlike.d.ts +12 -0
  274. package/dist/types/raw/tweet/Unlike.js +4 -0
  275. package/dist/types/raw/tweet/Unlike.js.map +1 -0
  276. package/dist/types/raw/tweet/Unpost.d.ts +17 -0
  277. package/dist/types/raw/tweet/Unpost.js +4 -0
  278. package/dist/types/raw/tweet/Unpost.js.map +1 -0
  279. package/dist/types/raw/tweet/Unretweet.d.ts +25 -0
  280. package/dist/types/raw/tweet/Unretweet.js +4 -0
  281. package/dist/types/raw/tweet/Unretweet.js.map +1 -0
  282. package/dist/types/raw/tweet/Unschedule.d.ts +12 -0
  283. package/dist/types/raw/tweet/Unschedule.js +4 -0
  284. package/dist/types/raw/tweet/Unschedule.js.map +1 -0
  285. package/dist/types/raw/user/Affiliates.d.ts +154 -0
  286. package/dist/types/raw/user/Affiliates.js +4 -0
  287. package/dist/types/raw/user/Affiliates.js.map +1 -0
  288. package/dist/types/raw/user/Analytics.d.ts +32 -0
  289. package/dist/types/raw/user/Analytics.js +4 -0
  290. package/dist/types/raw/user/Analytics.js.map +1 -0
  291. package/dist/types/raw/user/Bookmarks.d.ts +550 -0
  292. package/dist/types/raw/user/Bookmarks.js +4 -0
  293. package/dist/types/raw/user/Bookmarks.js.map +1 -0
  294. package/dist/types/raw/user/Details.d.ts +157 -0
  295. package/dist/types/raw/user/Details.js +4 -0
  296. package/dist/types/raw/user/Details.js.map +1 -0
  297. package/dist/types/raw/user/Follow.d.ts +248 -0
  298. package/dist/types/raw/user/Follow.js +4 -0
  299. package/dist/types/raw/user/Follow.js.map +1 -0
  300. package/dist/types/raw/user/Followed.d.ts +1666 -0
  301. package/dist/types/raw/user/Followed.js +4 -0
  302. package/dist/types/raw/user/Followed.js.map +1 -0
  303. package/dist/types/raw/user/Followers.d.ts +182 -0
  304. package/dist/types/raw/user/Followers.js +4 -0
  305. package/dist/types/raw/user/Followers.js.map +1 -0
  306. package/dist/types/raw/user/Following.d.ts +182 -0
  307. package/dist/types/raw/user/Following.js +4 -0
  308. package/dist/types/raw/user/Following.js.map +1 -0
  309. package/dist/types/raw/user/Highlights.d.ts +1106 -0
  310. package/dist/types/raw/user/Highlights.js +4 -0
  311. package/dist/types/raw/user/Highlights.js.map +1 -0
  312. package/dist/types/raw/user/Likes.d.ts +1065 -0
  313. package/dist/types/raw/user/Likes.js +4 -0
  314. package/dist/types/raw/user/Likes.js.map +1 -0
  315. package/dist/types/raw/user/Media.d.ts +1492 -0
  316. package/dist/types/raw/user/Media.js +4 -0
  317. package/dist/types/raw/user/Media.js.map +1 -0
  318. package/dist/types/raw/user/Notifications.d.ts +142 -0
  319. package/dist/types/raw/user/Notifications.js +4 -0
  320. package/dist/types/raw/user/Notifications.js.map +1 -0
  321. package/dist/types/raw/user/Recommended.d.ts +1991 -0
  322. package/dist/types/raw/user/Recommended.js +4 -0
  323. package/dist/types/raw/user/Recommended.js.map +1 -0
  324. package/dist/types/raw/user/Scheduled.d.ts +31 -0
  325. package/dist/types/raw/user/Scheduled.js +4 -0
  326. package/dist/types/raw/user/Scheduled.js.map +1 -0
  327. package/dist/types/raw/user/Subscriptions.d.ts +151 -0
  328. package/dist/types/raw/user/Subscriptions.js +4 -0
  329. package/dist/types/raw/user/Subscriptions.js.map +1 -0
  330. package/dist/types/raw/user/Tweets.d.ts +1065 -0
  331. package/dist/types/raw/user/Tweets.js +4 -0
  332. package/dist/types/raw/user/Tweets.js.map +1 -0
  333. package/dist/types/raw/user/TweetsAndReplies.d.ts +1065 -0
  334. package/dist/types/raw/user/TweetsAndReplies.js +4 -0
  335. package/dist/types/raw/user/TweetsAndReplies.js.map +1 -0
  336. package/dist/types/raw/user/Unfollow.d.ts +248 -0
  337. package/dist/types/raw/user/Unfollow.js +4 -0
  338. package/dist/types/raw/user/Unfollow.js.map +1 -0
  339. package/eslint.config.mjs +17 -0
  340. package/package.json +22 -19
  341. package/src/Rettiwt.ts +22 -7
  342. package/src/cli.ts +0 -2
  343. package/src/collections/Extractors.ts +40 -34
  344. package/src/collections/Groups.ts +4 -0
  345. package/src/collections/Requests.ts +46 -44
  346. package/src/commands/Tweet.ts +35 -7
  347. package/src/commands/User.ts +13 -2
  348. package/src/enums/Authentication.ts +10 -0
  349. package/src/enums/Data.ts +3 -3
  350. package/src/enums/Media.ts +10 -0
  351. package/src/enums/Notification.ts +12 -0
  352. package/src/enums/Resource.ts +4 -0
  353. package/src/enums/raw/Analytics.ts +29 -0
  354. package/src/enums/raw/Media.ts +10 -0
  355. package/src/enums/raw/Notification.ts +11 -0
  356. package/src/enums/raw/Tweet.ts +9 -0
  357. package/src/helper/JsonUtils.ts +1 -1
  358. package/src/helper/TidUtils.ts +189 -0
  359. package/src/index.ts +78 -44
  360. package/src/models/RettiwtConfig.ts +64 -0
  361. package/src/models/args/FetchArgs.ts +86 -436
  362. package/src/models/args/PostArgs.ts +24 -249
  363. package/src/models/auth/AuthCookie.ts +58 -0
  364. package/src/models/auth/AuthCredential.ts +85 -0
  365. package/src/models/data/CursoredData.ts +21 -26
  366. package/src/models/data/List.ts +18 -15
  367. package/src/models/data/Notification.ts +25 -38
  368. package/src/models/data/Tweet.ts +143 -104
  369. package/src/models/data/User.ts +74 -44
  370. package/src/models/errors/RettiwtError.ts +3 -2
  371. package/src/models/params/Variables.ts +62 -0
  372. package/src/requests/List.ts +121 -0
  373. package/src/requests/Media.ts +67 -0
  374. package/src/requests/Tweet.ts +496 -0
  375. package/src/requests/User.ts +783 -0
  376. package/src/services/{public → internal}/AuthService.ts +28 -60
  377. package/src/services/internal/LogService.ts +4 -19
  378. package/src/services/internal/TidService.ts +147 -0
  379. package/src/services/public/FetcherService.ts +89 -59
  380. package/src/services/public/ListService.ts +4 -4
  381. package/src/services/public/TweetService.ts +129 -42
  382. package/src/services/public/UserService.ts +49 -37
  383. package/src/types/RettiwtConfig.ts +18 -12
  384. package/src/types/args/FetchArgs.ts +148 -0
  385. package/src/types/args/PostArgs.ts +112 -0
  386. package/src/types/auth/AuthCookie.ts +22 -0
  387. package/src/types/auth/AuthCredential.ts +28 -0
  388. package/src/types/auth/TidDynamicArgs.ts +10 -0
  389. package/src/types/auth/TidHeader.ts +12 -0
  390. package/src/types/auth/TidParams.ts +36 -0
  391. package/src/types/auth/TidProvider.ts +19 -0
  392. package/src/types/data/CursoredData.ts +18 -0
  393. package/src/types/data/List.ts +27 -0
  394. package/src/types/data/Notification.ts +26 -0
  395. package/src/types/data/Tweet.ts +96 -0
  396. package/src/types/data/User.ts +48 -0
  397. package/src/types/params/Variables.ts +41 -0
  398. package/src/types/raw/base/Analytic.ts +26 -0
  399. package/src/types/raw/base/Cursor.ts +13 -0
  400. package/src/types/raw/base/LimitedVisibilityTweet.ts +40 -0
  401. package/src/types/raw/base/List.ts +50 -0
  402. package/src/types/raw/base/Media.ts +53 -0
  403. package/src/types/raw/base/Notification.ts +67 -0
  404. package/src/types/raw/base/Space.ts +35 -0
  405. package/src/types/raw/base/Tweet.ts +139 -0
  406. package/src/types/raw/base/User.ts +164 -0
  407. package/src/types/raw/composite/DataResult.ts +8 -0
  408. package/src/types/raw/composite/TimelineTweet.ts +14 -0
  409. package/src/types/raw/composite/TimelineUser.ts +13 -0
  410. package/src/types/raw/generic/Error.ts +35 -0
  411. package/src/types/raw/generic/Response.ts +13 -0
  412. package/src/types/raw/list/Details.ts +137 -0
  413. package/src/types/raw/list/Members.ts +154 -0
  414. package/src/types/raw/list/Tweets.ts +2296 -0
  415. package/src/types/raw/media/FinalizeUpload.ts +20 -0
  416. package/src/types/raw/media/InitalizeUpload.ts +12 -0
  417. package/src/types/raw/media/LiveVideoStream.ts +21 -0
  418. package/src/types/raw/space/Details.ts +359 -0
  419. package/src/types/raw/tweet/Details.ts +210 -0
  420. package/src/types/raw/tweet/Like.ts +14 -0
  421. package/src/types/raw/tweet/Likers.ts +200 -0
  422. package/src/types/raw/tweet/Post.ts +150 -0
  423. package/src/types/raw/tweet/Replies.ts +539 -0
  424. package/src/types/raw/tweet/Retweet.ts +31 -0
  425. package/src/types/raw/tweet/Retweeters.ts +208 -0
  426. package/src/types/raw/tweet/Schedule.ts +18 -0
  427. package/src/types/raw/tweet/Search.ts +597 -0
  428. package/src/types/raw/tweet/Unlike.ts +14 -0
  429. package/src/types/raw/tweet/Unpost.ts +20 -0
  430. package/src/types/raw/tweet/Unretweet.ts +31 -0
  431. package/src/types/raw/tweet/Unschedule.ts +14 -0
  432. package/src/types/raw/user/Affiliates.ts +179 -0
  433. package/src/types/raw/user/Analytics.ts +39 -0
  434. package/src/types/raw/user/Bookmarks.ts +637 -0
  435. package/src/types/raw/user/Details.ts +185 -0
  436. package/src/types/raw/user/Follow.ts +280 -0
  437. package/src/types/raw/user/Followed.ts +1942 -0
  438. package/src/types/raw/user/Followers.ts +215 -0
  439. package/src/types/raw/user/Following.ts +215 -0
  440. package/src/types/raw/user/Highlights.ts +1287 -0
  441. package/src/types/raw/user/Likes.ts +1254 -0
  442. package/src/types/raw/user/Media.ts +1738 -0
  443. package/src/types/raw/user/Notifications.ts +175 -0
  444. package/src/types/raw/user/Recommended.ts +2319 -0
  445. package/src/types/raw/user/Scheduled.ts +37 -0
  446. package/src/types/raw/user/Subscriptions.ts +176 -0
  447. package/src/types/raw/user/Tweets.ts +1254 -0
  448. package/src/types/raw/user/TweetsAndReplies.ts +1254 -0
  449. package/src/types/raw/user/Unfollow.ts +280 -0
  450. package/tsconfig.json +7 -5
  451. package/.eslintignore +0 -3
  452. package/dist/commands/Auth.d.ts +0 -10
  453. package/dist/commands/Auth.js +0 -101
  454. package/dist/commands/Auth.js.map +0 -1
  455. package/dist/models/errors/DataValidationError.d.ts +0 -30
  456. package/dist/models/errors/DataValidationError.js +0 -34
  457. package/dist/models/errors/DataValidationError.js.map +0 -1
  458. package/dist/services/public/AuthService.d.ts +0 -91
  459. package/dist/services/public/AuthService.js +0 -205
  460. package/dist/services/public/AuthService.js.map +0 -1
  461. package/dist/types/ReturnTypes.d.ts +0 -21
  462. package/dist/types/ReturnTypes.js.map +0 -1
  463. package/src/commands/Auth.ts +0 -46
  464. package/src/models/errors/DataValidationError.ts +0 -44
  465. package/src/types/ReturnTypes.ts +0 -24
@@ -0,0 +1,1942 @@
1
+ /* eslint-disable */
2
+
3
+ /**
4
+ * The raw data received when fetching the followed timeline of the given user.
5
+ *
6
+ * @public
7
+ */
8
+ export interface IUserFollowedResponse {
9
+ data: Data;
10
+ }
11
+
12
+ interface Data {
13
+ home: Home;
14
+ }
15
+
16
+ interface Home {
17
+ home_timeline_urt: HomeTimelineUrt;
18
+ }
19
+
20
+ interface HomeTimelineUrt {
21
+ instructions: Instruction[];
22
+ responseObjects: ResponseObjects;
23
+ metadata: Metadata2;
24
+ }
25
+
26
+ interface Instruction {
27
+ type: string;
28
+ entries?: Entry[];
29
+ alertType?: string;
30
+ triggerDelayMs?: number;
31
+ displayDurationMs?: number;
32
+ usersResults?: UsersResult[];
33
+ richText?: RichText;
34
+ iconDisplayInfo?: IconDisplayInfo;
35
+ colorConfig?: ColorConfig;
36
+ displayLocation?: string;
37
+ }
38
+
39
+ interface Entry {
40
+ entryId: string;
41
+ sortIndex: string;
42
+ content: Content;
43
+ }
44
+
45
+ interface Content {
46
+ entryType: string;
47
+ __typename: string;
48
+ itemContent?: ItemContent;
49
+ feedbackInfo?: FeedbackInfo;
50
+ clientEventInfo?: ClientEventInfo;
51
+ items?: Item[];
52
+ metadata?: Metadata;
53
+ displayType?: string;
54
+ value?: string;
55
+ cursorType?: string;
56
+ }
57
+
58
+ interface ItemContent {
59
+ itemType: string;
60
+ __typename: string;
61
+ tweet_results: TweetResults;
62
+ tweetDisplayType: string;
63
+ promotedMetadata?: PromotedMetadata;
64
+ socialContext?: SocialContext;
65
+ }
66
+
67
+ interface TweetResults {
68
+ result: Result;
69
+ }
70
+
71
+ interface Result {
72
+ __typename: string;
73
+ rest_id?: string;
74
+ core?: Core;
75
+ unmention_data?: UnmentionData;
76
+ edit_control?: EditControl;
77
+ is_translatable?: boolean;
78
+ views?: Views;
79
+ source?: string;
80
+ legacy?: Legacy2;
81
+ note_tweet?: NoteTweet;
82
+ tweet?: Tweet;
83
+ limitedActionResults?: LimitedActionResults;
84
+ card?: Card2;
85
+ previous_counts?: PreviousCounts;
86
+ quoted_status_result?: QuotedStatusResult;
87
+ }
88
+
89
+ interface Core {
90
+ user_results: UserResults;
91
+ }
92
+
93
+ interface UserResults {
94
+ result: Result2;
95
+ }
96
+
97
+ interface Result2 {
98
+ __typename: string;
99
+ id: string;
100
+ rest_id: string;
101
+ affiliates_highlighted_label: AffiliatesHighlightedLabel;
102
+ has_graduated_access: boolean;
103
+ is_blue_verified: boolean;
104
+ profile_image_shape: string;
105
+ legacy: Legacy;
106
+ professional?: Professional;
107
+ tipjar_settings: TipjarSettings;
108
+ verified_phone_status: boolean;
109
+ super_follow_eligible?: boolean;
110
+ }
111
+
112
+ interface AffiliatesHighlightedLabel {
113
+ label?: Label;
114
+ }
115
+
116
+ interface Label {
117
+ url: Url;
118
+ badge: Badge;
119
+ description: string;
120
+ userLabelType: string;
121
+ userLabelDisplayType: string;
122
+ }
123
+
124
+ interface Url {
125
+ url: string;
126
+ urlType: string;
127
+ }
128
+
129
+ interface Badge {
130
+ url: string;
131
+ }
132
+
133
+ interface Legacy {
134
+ can_dm: boolean;
135
+ can_media_tag: boolean;
136
+ created_at: string;
137
+ default_profile: boolean;
138
+ default_profile_image: boolean;
139
+ description: string;
140
+ entities: Entities;
141
+ fast_followers_count: number;
142
+ favourites_count: number;
143
+ followers_count: number;
144
+ friends_count: number;
145
+ has_custom_timelines: boolean;
146
+ is_translator: boolean;
147
+ listed_count: number;
148
+ location: string;
149
+ media_count: number;
150
+ name: string;
151
+ normal_followers_count: number;
152
+ pinned_tweet_ids_str: string[];
153
+ possibly_sensitive: boolean;
154
+ profile_banner_url: string;
155
+ profile_image_url_https: string;
156
+ profile_interstitial_type: string;
157
+ screen_name: string;
158
+ statuses_count: number;
159
+ translator_type: string;
160
+ url?: string;
161
+ verified: boolean;
162
+ verified_type?: string;
163
+ want_retweets: boolean;
164
+ withheld_in_countries: any[];
165
+ following?: boolean;
166
+ }
167
+
168
+ interface Entities {
169
+ description: Description;
170
+ url?: Url3;
171
+ }
172
+
173
+ interface Description {
174
+ urls: Url2[];
175
+ }
176
+
177
+ interface Url2 {
178
+ display_url: string;
179
+ expanded_url: string;
180
+ url: string;
181
+ indices: number[];
182
+ }
183
+
184
+ interface Url3 {
185
+ urls: Url4[];
186
+ }
187
+
188
+ interface Url4 {
189
+ display_url: string;
190
+ expanded_url: string;
191
+ url: string;
192
+ indices: number[];
193
+ }
194
+
195
+ interface Professional {
196
+ rest_id: string;
197
+ professional_type: string;
198
+ category: Category[];
199
+ }
200
+
201
+ interface Category {
202
+ id: number;
203
+ name: string;
204
+ icon_name: string;
205
+ }
206
+
207
+ interface TipjarSettings {}
208
+
209
+ interface UnmentionData {}
210
+
211
+ interface EditControl {
212
+ edit_tweet_ids?: string[];
213
+ editable_until_msecs?: string;
214
+ is_edit_eligible?: boolean;
215
+ edits_remaining?: string;
216
+ initial_tweet_id?: string;
217
+ edit_control_initial?: EditControlInitial;
218
+ }
219
+
220
+ interface EditControlInitial {
221
+ edit_tweet_ids: string[];
222
+ editable_until_msecs: string;
223
+ is_edit_eligible: boolean;
224
+ edits_remaining: string;
225
+ }
226
+
227
+ interface Views {
228
+ count: string;
229
+ state: string;
230
+ }
231
+
232
+ interface Legacy2 {
233
+ bookmark_count: number;
234
+ bookmarked: boolean;
235
+ created_at: string;
236
+ conversation_id_str: string;
237
+ display_text_range: number[];
238
+ entities: Entities2;
239
+ extended_entities?: ExtendedEntities;
240
+ favorite_count: number;
241
+ favorited: boolean;
242
+ full_text: string;
243
+ is_quote_status: boolean;
244
+ lang: string;
245
+ possibly_sensitive?: boolean;
246
+ possibly_sensitive_editable?: boolean;
247
+ quote_count: number;
248
+ reply_count: number;
249
+ retweet_count: number;
250
+ retweeted: boolean;
251
+ user_id_str: string;
252
+ id_str: string;
253
+ scopes?: Scopes;
254
+ quoted_status_id_str?: string;
255
+ quoted_status_permalink?: QuotedStatusPermalink;
256
+ }
257
+
258
+ interface Entities2 {
259
+ hashtags: Hashtag[];
260
+ media?: Medum[];
261
+ symbols: any[];
262
+ timestamps: any[];
263
+ urls: Url5[];
264
+ user_mentions: UserMention[];
265
+ }
266
+
267
+ interface Hashtag {
268
+ indices: number[];
269
+ text: string;
270
+ }
271
+
272
+ interface Medum {
273
+ display_url: string;
274
+ expanded_url: string;
275
+ id_str: string;
276
+ indices: number[];
277
+ media_key: string;
278
+ media_url_https: string;
279
+ type: string;
280
+ url: string;
281
+ ext_media_availability: ExtMediaAvailability;
282
+ features?: Features;
283
+ sizes: Sizes;
284
+ original_info: OriginalInfo;
285
+ media_results: MediaResults;
286
+ additional_media_info?: AdditionalMediaInfo;
287
+ video_info?: VideoInfo;
288
+ allow_download_status?: AllowDownloadStatus;
289
+ ext_alt_text?: string;
290
+ }
291
+
292
+ interface ExtMediaAvailability {
293
+ status: string;
294
+ }
295
+
296
+ interface Features {
297
+ large: Large;
298
+ medium: Medium;
299
+ small: Small;
300
+ orig: Orig;
301
+ all?: All;
302
+ }
303
+
304
+ interface Large {
305
+ faces: Face[];
306
+ }
307
+
308
+ interface Face {
309
+ x: number;
310
+ y: number;
311
+ h: number;
312
+ w: number;
313
+ }
314
+
315
+ interface Medium {
316
+ faces: Face2[];
317
+ }
318
+
319
+ interface Face2 {
320
+ x: number;
321
+ y: number;
322
+ h: number;
323
+ w: number;
324
+ }
325
+
326
+ interface Small {
327
+ faces: Face3[];
328
+ }
329
+
330
+ interface Face3 {
331
+ x: number;
332
+ y: number;
333
+ h: number;
334
+ w: number;
335
+ }
336
+
337
+ interface Orig {
338
+ faces: Face4[];
339
+ }
340
+
341
+ interface Face4 {
342
+ x: number;
343
+ y: number;
344
+ h: number;
345
+ w: number;
346
+ }
347
+
348
+ interface All {
349
+ tags: Tag[];
350
+ }
351
+
352
+ interface Tag {
353
+ user_id: string;
354
+ name: string;
355
+ screen_name: string;
356
+ type: string;
357
+ }
358
+
359
+ interface Sizes {
360
+ large: Large2;
361
+ medium: Medium2;
362
+ small: Small2;
363
+ thumb: Thumb;
364
+ }
365
+
366
+ interface Large2 {
367
+ h: number;
368
+ w: number;
369
+ resize: string;
370
+ }
371
+
372
+ interface Medium2 {
373
+ h: number;
374
+ w: number;
375
+ resize: string;
376
+ }
377
+
378
+ interface Small2 {
379
+ h: number;
380
+ w: number;
381
+ resize: string;
382
+ }
383
+
384
+ interface Thumb {
385
+ h: number;
386
+ w: number;
387
+ resize: string;
388
+ }
389
+
390
+ interface OriginalInfo {
391
+ height: number;
392
+ width: number;
393
+ focus_rects: FocusRect[];
394
+ }
395
+
396
+ interface FocusRect {
397
+ x: number;
398
+ y: number;
399
+ w: number;
400
+ h: number;
401
+ }
402
+
403
+ interface MediaResults {
404
+ result: Result3;
405
+ }
406
+
407
+ interface Result3 {
408
+ media_key: string;
409
+ }
410
+
411
+ interface AdditionalMediaInfo {
412
+ monetizable: boolean;
413
+ }
414
+
415
+ interface VideoInfo {
416
+ aspect_ratio: number[];
417
+ duration_millis?: number;
418
+ variants: Variant[];
419
+ }
420
+
421
+ interface Variant {
422
+ bitrate?: number;
423
+ content_type: string;
424
+ url: string;
425
+ }
426
+
427
+ interface AllowDownloadStatus {
428
+ allow_download: boolean;
429
+ }
430
+
431
+ interface Url5 {
432
+ display_url: string;
433
+ expanded_url: string;
434
+ url: string;
435
+ indices: number[];
436
+ }
437
+
438
+ interface UserMention {
439
+ id_str: string;
440
+ name: string;
441
+ screen_name: string;
442
+ indices: number[];
443
+ }
444
+
445
+ interface ExtendedEntities {
446
+ media: Medum2[];
447
+ }
448
+
449
+ interface Medum2 {
450
+ display_url: string;
451
+ expanded_url: string;
452
+ id_str: string;
453
+ indices: number[];
454
+ media_key: string;
455
+ media_url_https: string;
456
+ type: string;
457
+ url: string;
458
+ ext_media_availability: ExtMediaAvailability2;
459
+ features?: Features2;
460
+ sizes: Sizes2;
461
+ original_info: OriginalInfo2;
462
+ media_results: MediaResults2;
463
+ additional_media_info?: AdditionalMediaInfo2;
464
+ video_info?: VideoInfo2;
465
+ allow_download_status?: AllowDownloadStatus2;
466
+ ext_alt_text?: string;
467
+ }
468
+
469
+ interface ExtMediaAvailability2 {
470
+ status: string;
471
+ }
472
+
473
+ interface Features2 {
474
+ large: Large3;
475
+ medium: Medium3;
476
+ small: Small3;
477
+ orig: Orig2;
478
+ all?: All2;
479
+ }
480
+
481
+ interface Large3 {
482
+ faces: Face5[];
483
+ }
484
+
485
+ interface Face5 {
486
+ x: number;
487
+ y: number;
488
+ h: number;
489
+ w: number;
490
+ }
491
+
492
+ interface Medium3 {
493
+ faces: Face6[];
494
+ }
495
+
496
+ interface Face6 {
497
+ x: number;
498
+ y: number;
499
+ h: number;
500
+ w: number;
501
+ }
502
+
503
+ interface Small3 {
504
+ faces: Face7[];
505
+ }
506
+
507
+ interface Face7 {
508
+ x: number;
509
+ y: number;
510
+ h: number;
511
+ w: number;
512
+ }
513
+
514
+ interface Orig2 {
515
+ faces: Face8[];
516
+ }
517
+
518
+ interface Face8 {
519
+ x: number;
520
+ y: number;
521
+ h: number;
522
+ w: number;
523
+ }
524
+
525
+ interface All2 {
526
+ tags: Tag2[];
527
+ }
528
+
529
+ interface Tag2 {
530
+ user_id: string;
531
+ name: string;
532
+ screen_name: string;
533
+ type: string;
534
+ }
535
+
536
+ interface Sizes2 {
537
+ large: Large4;
538
+ medium: Medium4;
539
+ small: Small4;
540
+ thumb: Thumb2;
541
+ }
542
+
543
+ interface Large4 {
544
+ h: number;
545
+ w: number;
546
+ resize: string;
547
+ }
548
+
549
+ interface Medium4 {
550
+ h: number;
551
+ w: number;
552
+ resize: string;
553
+ }
554
+
555
+ interface Small4 {
556
+ h: number;
557
+ w: number;
558
+ resize: string;
559
+ }
560
+
561
+ interface Thumb2 {
562
+ h: number;
563
+ w: number;
564
+ resize: string;
565
+ }
566
+
567
+ interface OriginalInfo2 {
568
+ height: number;
569
+ width: number;
570
+ focus_rects: FocusRect2[];
571
+ }
572
+
573
+ interface FocusRect2 {
574
+ x: number;
575
+ y: number;
576
+ w: number;
577
+ h: number;
578
+ }
579
+
580
+ interface MediaResults2 {
581
+ result: Result4;
582
+ }
583
+
584
+ interface Result4 {
585
+ media_key: string;
586
+ }
587
+
588
+ interface AdditionalMediaInfo2 {
589
+ monetizable: boolean;
590
+ }
591
+
592
+ interface VideoInfo2 {
593
+ aspect_ratio: number[];
594
+ duration_millis?: number;
595
+ variants: Variant2[];
596
+ }
597
+
598
+ interface Variant2 {
599
+ bitrate?: number;
600
+ content_type: string;
601
+ url: string;
602
+ }
603
+
604
+ interface AllowDownloadStatus2 {
605
+ allow_download: boolean;
606
+ }
607
+
608
+ interface Scopes {
609
+ followers: boolean;
610
+ }
611
+
612
+ interface QuotedStatusPermalink {
613
+ url: string;
614
+ expanded: string;
615
+ display: string;
616
+ }
617
+
618
+ interface NoteTweet {
619
+ is_expandable: boolean;
620
+ note_tweet_results: NoteTweetResults;
621
+ }
622
+
623
+ interface NoteTweetResults {
624
+ result: Result5;
625
+ }
626
+
627
+ interface Result5 {
628
+ id: string;
629
+ text: string;
630
+ entity_set: EntitySet;
631
+ richtext?: Richtext;
632
+ media?: Media;
633
+ }
634
+
635
+ interface EntitySet {
636
+ hashtags: Hashtag2[];
637
+ symbols: any[];
638
+ urls: Url6[];
639
+ user_mentions: UserMention2[];
640
+ timestamps?: any[];
641
+ }
642
+
643
+ interface Hashtag2 {
644
+ indices: number[];
645
+ text: string;
646
+ }
647
+
648
+ interface Url6 {
649
+ display_url: string;
650
+ expanded_url: string;
651
+ url: string;
652
+ indices: number[];
653
+ }
654
+
655
+ interface UserMention2 {
656
+ id_str: string;
657
+ name: string;
658
+ screen_name: string;
659
+ indices: number[];
660
+ }
661
+
662
+ interface Richtext {
663
+ richtext_tags: RichtextTag[];
664
+ }
665
+
666
+ interface RichtextTag {
667
+ from_index: number;
668
+ to_index: number;
669
+ richtext_types: string[];
670
+ }
671
+
672
+ interface Media {
673
+ inline_media: InlineMedum[];
674
+ }
675
+
676
+ interface InlineMedum {
677
+ media_id: string;
678
+ index: number;
679
+ }
680
+
681
+ interface Tweet {
682
+ rest_id: string;
683
+ core: Core2;
684
+ card: Card;
685
+ unmention_data: UnmentionData2;
686
+ edit_control: EditControl2;
687
+ is_translatable: boolean;
688
+ views: Views2;
689
+ source: string;
690
+ legacy: Legacy5;
691
+ }
692
+
693
+ interface Core2 {
694
+ user_results: UserResults2;
695
+ }
696
+
697
+ interface UserResults2 {
698
+ result: Result6;
699
+ }
700
+
701
+ interface Result6 {
702
+ __typename: string;
703
+ id: string;
704
+ rest_id: string;
705
+ affiliates_highlighted_label: AffiliatesHighlightedLabel2;
706
+ has_graduated_access: boolean;
707
+ is_blue_verified: boolean;
708
+ profile_image_shape: string;
709
+ legacy: Legacy3;
710
+ professional: Professional2;
711
+ tipjar_settings: TipjarSettings2;
712
+ verified_phone_status: boolean;
713
+ }
714
+
715
+ interface AffiliatesHighlightedLabel2 {}
716
+
717
+ interface Legacy3 {
718
+ can_dm: boolean;
719
+ can_media_tag: boolean;
720
+ created_at: string;
721
+ default_profile: boolean;
722
+ default_profile_image: boolean;
723
+ description: string;
724
+ entities: Entities3;
725
+ fast_followers_count: number;
726
+ favourites_count: number;
727
+ followers_count: number;
728
+ friends_count: number;
729
+ has_custom_timelines: boolean;
730
+ is_translator: boolean;
731
+ listed_count: number;
732
+ location: string;
733
+ media_count: number;
734
+ name: string;
735
+ normal_followers_count: number;
736
+ pinned_tweet_ids_str: string[];
737
+ possibly_sensitive: boolean;
738
+ profile_banner_url: string;
739
+ profile_image_url_https: string;
740
+ profile_interstitial_type: string;
741
+ screen_name: string;
742
+ statuses_count: number;
743
+ translator_type: string;
744
+ url: string;
745
+ verified: boolean;
746
+ want_retweets: boolean;
747
+ withheld_in_countries: any[];
748
+ }
749
+
750
+ interface Entities3 {
751
+ description: Description2;
752
+ url: Url8;
753
+ }
754
+
755
+ interface Description2 {
756
+ urls: Url7[];
757
+ }
758
+
759
+ interface Url7 {
760
+ display_url: string;
761
+ expanded_url: string;
762
+ url: string;
763
+ indices: number[];
764
+ }
765
+
766
+ interface Url8 {
767
+ urls: Url9[];
768
+ }
769
+
770
+ interface Url9 {
771
+ display_url: string;
772
+ expanded_url: string;
773
+ url: string;
774
+ indices: number[];
775
+ }
776
+
777
+ interface Professional2 {
778
+ rest_id: string;
779
+ professional_type: string;
780
+ category: any[];
781
+ }
782
+
783
+ interface TipjarSettings2 {}
784
+
785
+ interface Card {
786
+ rest_id: string;
787
+ legacy: Legacy4;
788
+ }
789
+
790
+ interface Legacy4 {
791
+ binding_values: BindingValue[];
792
+ card_platform: CardPlatform;
793
+ name: string;
794
+ url: string;
795
+ user_refs_results: any[];
796
+ }
797
+
798
+ interface BindingValue {
799
+ key: string;
800
+ value: Value;
801
+ }
802
+
803
+ interface Value {
804
+ string_value: string;
805
+ type: string;
806
+ scribe_key?: string;
807
+ }
808
+
809
+ interface CardPlatform {
810
+ platform: Platform;
811
+ }
812
+
813
+ interface Platform {
814
+ audience: Audience;
815
+ device: Device;
816
+ }
817
+
818
+ interface Audience {
819
+ name: string;
820
+ }
821
+
822
+ interface Device {
823
+ name: string;
824
+ version: string;
825
+ }
826
+
827
+ interface UnmentionData2 {}
828
+
829
+ interface EditControl2 {
830
+ edit_tweet_ids: string[];
831
+ editable_until_msecs: string;
832
+ is_edit_eligible: boolean;
833
+ edits_remaining: string;
834
+ }
835
+
836
+ interface Views2 {
837
+ count: string;
838
+ state: string;
839
+ }
840
+
841
+ interface Legacy5 {
842
+ bookmark_count: number;
843
+ bookmarked: boolean;
844
+ created_at: string;
845
+ conversation_control: ConversationControl;
846
+ conversation_id_str: string;
847
+ display_text_range: number[];
848
+ entities: Entities4;
849
+ favorite_count: number;
850
+ favorited: boolean;
851
+ full_text: string;
852
+ is_quote_status: boolean;
853
+ lang: string;
854
+ limited_actions: string;
855
+ possibly_sensitive: boolean;
856
+ possibly_sensitive_editable: boolean;
857
+ quote_count: number;
858
+ reply_count: number;
859
+ retweet_count: number;
860
+ retweeted: boolean;
861
+ scopes: Scopes2;
862
+ user_id_str: string;
863
+ id_str: string;
864
+ }
865
+
866
+ interface ConversationControl {
867
+ policy: string;
868
+ conversation_owner_results: ConversationOwnerResults;
869
+ }
870
+
871
+ interface ConversationOwnerResults {
872
+ result: Result7;
873
+ }
874
+
875
+ interface Result7 {
876
+ __typename: string;
877
+ legacy: Legacy6;
878
+ }
879
+
880
+ interface Legacy6 {
881
+ screen_name: string;
882
+ }
883
+
884
+ interface Entities4 {
885
+ hashtags: any[];
886
+ symbols: any[];
887
+ timestamps: any[];
888
+ urls: Url10[];
889
+ user_mentions: any[];
890
+ }
891
+
892
+ interface Url10 {
893
+ display_url: string;
894
+ expanded_url: string;
895
+ url: string;
896
+ indices: number[];
897
+ }
898
+
899
+ interface Scopes2 {
900
+ followers: boolean;
901
+ }
902
+
903
+ interface LimitedActionResults {
904
+ limited_actions: LimitedAction[];
905
+ }
906
+
907
+ interface LimitedAction {
908
+ action: string;
909
+ prompt: Prompt;
910
+ }
911
+
912
+ interface Prompt {
913
+ __typename: string;
914
+ cta_type: string;
915
+ headline: Headline;
916
+ subtext: Subtext;
917
+ }
918
+
919
+ interface Headline {
920
+ text: string;
921
+ entities: any[];
922
+ }
923
+
924
+ interface Subtext {
925
+ text: string;
926
+ entities: any[];
927
+ }
928
+
929
+ interface Card2 {
930
+ rest_id: string;
931
+ legacy: Legacy7;
932
+ }
933
+
934
+ interface Legacy7 {
935
+ binding_values: BindingValue2[];
936
+ card_platform: CardPlatform2;
937
+ name: string;
938
+ url: string;
939
+ user_refs_results: any[];
940
+ }
941
+
942
+ interface BindingValue2 {
943
+ key: string;
944
+ value: Value2;
945
+ }
946
+
947
+ interface Value2 {
948
+ string_value: string;
949
+ type: string;
950
+ scribe_key?: string;
951
+ }
952
+
953
+ interface CardPlatform2 {
954
+ platform: Platform2;
955
+ }
956
+
957
+ interface Platform2 {
958
+ audience: Audience2;
959
+ device: Device2;
960
+ }
961
+
962
+ interface Audience2 {
963
+ name: string;
964
+ }
965
+
966
+ interface Device2 {
967
+ name: string;
968
+ version: string;
969
+ }
970
+
971
+ interface PreviousCounts {
972
+ bookmark_count: number;
973
+ favorite_count: number;
974
+ quote_count: number;
975
+ reply_count: number;
976
+ retweet_count: number;
977
+ }
978
+
979
+ interface QuotedStatusResult {
980
+ result: Result8;
981
+ }
982
+
983
+ interface Result8 {
984
+ __typename: string;
985
+ rest_id: string;
986
+ core: Core3;
987
+ unmention_data: UnmentionData3;
988
+ edit_control: EditControl3;
989
+ is_translatable: boolean;
990
+ views: Views3;
991
+ source: string;
992
+ note_tweet: NoteTweet2;
993
+ legacy: Legacy9;
994
+ }
995
+
996
+ interface Core3 {
997
+ user_results: UserResults3;
998
+ }
999
+
1000
+ interface UserResults3 {
1001
+ result: Result9;
1002
+ }
1003
+
1004
+ interface Result9 {
1005
+ __typename: string;
1006
+ id: string;
1007
+ rest_id: string;
1008
+ affiliates_highlighted_label: AffiliatesHighlightedLabel3;
1009
+ has_graduated_access: boolean;
1010
+ is_blue_verified: boolean;
1011
+ profile_image_shape: string;
1012
+ legacy: Legacy8;
1013
+ tipjar_settings: TipjarSettings3;
1014
+ verified_phone_status: boolean;
1015
+ }
1016
+
1017
+ interface AffiliatesHighlightedLabel3 {
1018
+ label: Label2;
1019
+ }
1020
+
1021
+ interface Label2 {
1022
+ url: Url11;
1023
+ badge: Badge2;
1024
+ description: string;
1025
+ userLabelType: string;
1026
+ userLabelDisplayType: string;
1027
+ }
1028
+
1029
+ interface Url11 {
1030
+ url: string;
1031
+ urlType: string;
1032
+ }
1033
+
1034
+ interface Badge2 {
1035
+ url: string;
1036
+ }
1037
+
1038
+ interface Legacy8 {
1039
+ can_dm: boolean;
1040
+ can_media_tag: boolean;
1041
+ created_at: string;
1042
+ default_profile: boolean;
1043
+ default_profile_image: boolean;
1044
+ description: string;
1045
+ entities: Entities5;
1046
+ fast_followers_count: number;
1047
+ favourites_count: number;
1048
+ followers_count: number;
1049
+ friends_count: number;
1050
+ has_custom_timelines: boolean;
1051
+ is_translator: boolean;
1052
+ listed_count: number;
1053
+ location: string;
1054
+ media_count: number;
1055
+ name: string;
1056
+ normal_followers_count: number;
1057
+ pinned_tweet_ids_str: any[];
1058
+ possibly_sensitive: boolean;
1059
+ profile_banner_url: string;
1060
+ profile_image_url_https: string;
1061
+ profile_interstitial_type: string;
1062
+ screen_name: string;
1063
+ statuses_count: number;
1064
+ translator_type: string;
1065
+ verified: boolean;
1066
+ verified_type: string;
1067
+ want_retweets: boolean;
1068
+ withheld_in_countries: any[];
1069
+ }
1070
+
1071
+ interface Entities5 {
1072
+ description: Description3;
1073
+ }
1074
+
1075
+ interface Description3 {
1076
+ urls: any[];
1077
+ }
1078
+
1079
+ interface TipjarSettings3 {}
1080
+
1081
+ interface UnmentionData3 {}
1082
+
1083
+ interface EditControl3 {
1084
+ edit_tweet_ids: string[];
1085
+ editable_until_msecs: string;
1086
+ is_edit_eligible: boolean;
1087
+ edits_remaining: string;
1088
+ }
1089
+
1090
+ interface Views3 {
1091
+ count: string;
1092
+ state: string;
1093
+ }
1094
+
1095
+ interface NoteTweet2 {
1096
+ is_expandable: boolean;
1097
+ note_tweet_results: NoteTweetResults2;
1098
+ }
1099
+
1100
+ interface NoteTweetResults2 {
1101
+ result: Result10;
1102
+ }
1103
+
1104
+ interface Result10 {
1105
+ id: string;
1106
+ text: string;
1107
+ entity_set: EntitySet2;
1108
+ }
1109
+
1110
+ interface EntitySet2 {
1111
+ hashtags: any[];
1112
+ symbols: any[];
1113
+ urls: any[];
1114
+ user_mentions: any[];
1115
+ }
1116
+
1117
+ interface Legacy9 {
1118
+ bookmark_count: number;
1119
+ bookmarked: boolean;
1120
+ created_at: string;
1121
+ conversation_id_str: string;
1122
+ display_text_range: number[];
1123
+ entities: Entities6;
1124
+ favorite_count: number;
1125
+ favorited: boolean;
1126
+ full_text: string;
1127
+ is_quote_status: boolean;
1128
+ lang: string;
1129
+ quote_count: number;
1130
+ reply_count: number;
1131
+ retweet_count: number;
1132
+ retweeted: boolean;
1133
+ user_id_str: string;
1134
+ id_str: string;
1135
+ }
1136
+
1137
+ interface Entities6 {
1138
+ hashtags: any[];
1139
+ symbols: any[];
1140
+ timestamps: any[];
1141
+ urls: any[];
1142
+ user_mentions: any[];
1143
+ }
1144
+
1145
+ interface PromotedMetadata {
1146
+ advertiser_results: AdvertiserResults;
1147
+ adMetadataContainer: AdMetadataContainer;
1148
+ disclosureType: string;
1149
+ experimentValues: ExperimentValue[];
1150
+ impressionId: string;
1151
+ impressionString: string;
1152
+ clickTrackingInfo: ClickTrackingInfo;
1153
+ }
1154
+
1155
+ interface AdvertiserResults {
1156
+ result: Result11;
1157
+ }
1158
+
1159
+ interface Result11 {
1160
+ __typename: string;
1161
+ id: string;
1162
+ rest_id: string;
1163
+ affiliates_highlighted_label: AffiliatesHighlightedLabel4;
1164
+ has_graduated_access: boolean;
1165
+ is_blue_verified: boolean;
1166
+ profile_image_shape: string;
1167
+ legacy: Legacy10;
1168
+ tipjar_settings: TipjarSettings4;
1169
+ verified_phone_status: boolean;
1170
+ professional?: Professional3;
1171
+ }
1172
+
1173
+ interface AffiliatesHighlightedLabel4 {}
1174
+
1175
+ interface Legacy10 {
1176
+ can_dm: boolean;
1177
+ can_media_tag: boolean;
1178
+ created_at: string;
1179
+ default_profile: boolean;
1180
+ default_profile_image: boolean;
1181
+ description: string;
1182
+ entities: Entities7;
1183
+ fast_followers_count: number;
1184
+ favourites_count: number;
1185
+ followers_count: number;
1186
+ friends_count: number;
1187
+ has_custom_timelines: boolean;
1188
+ is_translator: boolean;
1189
+ listed_count: number;
1190
+ location: string;
1191
+ media_count: number;
1192
+ name: string;
1193
+ normal_followers_count: number;
1194
+ pinned_tweet_ids_str: string[];
1195
+ possibly_sensitive: boolean;
1196
+ profile_banner_url: string;
1197
+ profile_image_url_https: string;
1198
+ profile_interstitial_type: string;
1199
+ screen_name: string;
1200
+ statuses_count: number;
1201
+ translator_type: string;
1202
+ url: string;
1203
+ verified: boolean;
1204
+ want_retweets: boolean;
1205
+ withheld_in_countries: any[];
1206
+ verified_type?: string;
1207
+ }
1208
+
1209
+ interface Entities7 {
1210
+ description: Description4;
1211
+ url: Url13;
1212
+ }
1213
+
1214
+ interface Description4 {
1215
+ urls: Url12[];
1216
+ }
1217
+
1218
+ interface Url12 {
1219
+ display_url: string;
1220
+ expanded_url: string;
1221
+ url: string;
1222
+ indices: number[];
1223
+ }
1224
+
1225
+ interface Url13 {
1226
+ urls: Url14[];
1227
+ }
1228
+
1229
+ interface Url14 {
1230
+ display_url: string;
1231
+ expanded_url: string;
1232
+ url: string;
1233
+ indices: number[];
1234
+ }
1235
+
1236
+ interface TipjarSettings4 {}
1237
+
1238
+ interface Professional3 {
1239
+ rest_id: string;
1240
+ professional_type: string;
1241
+ category: Category2[];
1242
+ }
1243
+
1244
+ interface Category2 {
1245
+ id: number;
1246
+ name: string;
1247
+ icon_name: string;
1248
+ }
1249
+
1250
+ interface AdMetadataContainer {
1251
+ renderLegacyWebsiteCard: boolean;
1252
+ }
1253
+
1254
+ interface ExperimentValue {
1255
+ key: string;
1256
+ value: string;
1257
+ }
1258
+
1259
+ interface ClickTrackingInfo {
1260
+ urlParams: UrlParam[];
1261
+ }
1262
+
1263
+ interface UrlParam {
1264
+ key: string;
1265
+ value: string;
1266
+ }
1267
+
1268
+ interface SocialContext {
1269
+ type: string;
1270
+ contextType: string;
1271
+ text: string;
1272
+ landingUrl: LandingUrl;
1273
+ }
1274
+
1275
+ interface LandingUrl {
1276
+ url: string;
1277
+ urlType: string;
1278
+ }
1279
+
1280
+ interface FeedbackInfo {
1281
+ feedbackKeys: string[];
1282
+ }
1283
+
1284
+ interface ClientEventInfo {
1285
+ component: string;
1286
+ element?: string;
1287
+ details: Details;
1288
+ }
1289
+
1290
+ interface Details {
1291
+ timelinesDetails: TimelinesDetails;
1292
+ }
1293
+
1294
+ interface TimelinesDetails {
1295
+ injectionType: string;
1296
+ controllerData: string;
1297
+ }
1298
+
1299
+ interface Item {
1300
+ entryId: string;
1301
+ item: Item2;
1302
+ }
1303
+
1304
+ interface Item2 {
1305
+ itemContent: ItemContent2;
1306
+ feedbackInfo: FeedbackInfo2;
1307
+ clientEventInfo: ClientEventInfo2;
1308
+ }
1309
+
1310
+ interface ItemContent2 {
1311
+ itemType: string;
1312
+ __typename: string;
1313
+ tweet_results: TweetResults2;
1314
+ tweetDisplayType: string;
1315
+ }
1316
+
1317
+ interface TweetResults2 {
1318
+ result: Result12;
1319
+ }
1320
+
1321
+ interface Result12 {
1322
+ __typename: string;
1323
+ rest_id: string;
1324
+ core: Core4;
1325
+ unmention_data: UnmentionData4;
1326
+ edit_control: EditControl4;
1327
+ is_translatable: boolean;
1328
+ views: Views4;
1329
+ source: string;
1330
+ legacy: Legacy12;
1331
+ }
1332
+
1333
+ interface Core4 {
1334
+ user_results: UserResults4;
1335
+ }
1336
+
1337
+ interface UserResults4 {
1338
+ result: Result13;
1339
+ }
1340
+
1341
+ interface Result13 {
1342
+ __typename: string;
1343
+ id: string;
1344
+ rest_id: string;
1345
+ affiliates_highlighted_label: AffiliatesHighlightedLabel5;
1346
+ has_graduated_access: boolean;
1347
+ is_blue_verified: boolean;
1348
+ profile_image_shape: string;
1349
+ legacy: Legacy11;
1350
+ professional?: Professional4;
1351
+ tipjar_settings: TipjarSettings5;
1352
+ super_follow_eligible?: boolean;
1353
+ verified_phone_status: boolean;
1354
+ }
1355
+
1356
+ interface AffiliatesHighlightedLabel5 {}
1357
+
1358
+ interface Legacy11 {
1359
+ can_dm: boolean;
1360
+ can_media_tag: boolean;
1361
+ created_at: string;
1362
+ default_profile: boolean;
1363
+ default_profile_image: boolean;
1364
+ description: string;
1365
+ entities: Entities8;
1366
+ fast_followers_count: number;
1367
+ favourites_count: number;
1368
+ followers_count: number;
1369
+ friends_count: number;
1370
+ has_custom_timelines: boolean;
1371
+ is_translator: boolean;
1372
+ listed_count: number;
1373
+ location: string;
1374
+ media_count: number;
1375
+ name: string;
1376
+ normal_followers_count: number;
1377
+ pinned_tweet_ids_str: string[];
1378
+ possibly_sensitive: boolean;
1379
+ profile_banner_url: string;
1380
+ profile_image_url_https: string;
1381
+ profile_interstitial_type: string;
1382
+ screen_name: string;
1383
+ statuses_count: number;
1384
+ translator_type: string;
1385
+ url?: string;
1386
+ verified: boolean;
1387
+ verified_type?: string;
1388
+ want_retweets: boolean;
1389
+ withheld_in_countries: any[];
1390
+ following?: boolean;
1391
+ }
1392
+
1393
+ interface Entities8 {
1394
+ description: Description5;
1395
+ url?: Url15;
1396
+ }
1397
+
1398
+ interface Description5 {
1399
+ urls: any[];
1400
+ }
1401
+
1402
+ interface Url15 {
1403
+ urls: Url16[];
1404
+ }
1405
+
1406
+ interface Url16 {
1407
+ display_url: string;
1408
+ expanded_url: string;
1409
+ url: string;
1410
+ indices: number[];
1411
+ }
1412
+
1413
+ interface Professional4 {
1414
+ rest_id: string;
1415
+ professional_type: string;
1416
+ category: Category3[];
1417
+ }
1418
+
1419
+ interface Category3 {
1420
+ id: number;
1421
+ name: string;
1422
+ icon_name: string;
1423
+ }
1424
+
1425
+ interface TipjarSettings5 {
1426
+ is_enabled?: boolean;
1427
+ }
1428
+
1429
+ interface UnmentionData4 {}
1430
+
1431
+ interface EditControl4 {
1432
+ edit_tweet_ids: string[];
1433
+ editable_until_msecs: string;
1434
+ is_edit_eligible: boolean;
1435
+ edits_remaining: string;
1436
+ }
1437
+
1438
+ interface Views4 {
1439
+ count: string;
1440
+ state: string;
1441
+ }
1442
+
1443
+ interface Legacy12 {
1444
+ bookmark_count: number;
1445
+ bookmarked: boolean;
1446
+ created_at: string;
1447
+ conversation_id_str: string;
1448
+ display_text_range: number[];
1449
+ entities: Entities9;
1450
+ extended_entities?: ExtendedEntities2;
1451
+ favorite_count: number;
1452
+ favorited: boolean;
1453
+ full_text: string;
1454
+ is_quote_status: boolean;
1455
+ lang: string;
1456
+ possibly_sensitive?: boolean;
1457
+ possibly_sensitive_editable?: boolean;
1458
+ quote_count: number;
1459
+ reply_count: number;
1460
+ retweet_count: number;
1461
+ retweeted: boolean;
1462
+ user_id_str: string;
1463
+ id_str: string;
1464
+ in_reply_to_screen_name?: string;
1465
+ in_reply_to_status_id_str?: string;
1466
+ in_reply_to_user_id_str?: string;
1467
+ }
1468
+
1469
+ interface Entities9 {
1470
+ hashtags: any[];
1471
+ media?: Medum3[];
1472
+ symbols: any[];
1473
+ timestamps: any[];
1474
+ urls: any[];
1475
+ user_mentions: UserMention3[];
1476
+ }
1477
+
1478
+ interface Medum3 {
1479
+ display_url: string;
1480
+ expanded_url: string;
1481
+ id_str: string;
1482
+ indices: number[];
1483
+ media_key: string;
1484
+ media_url_https: string;
1485
+ type: string;
1486
+ url: string;
1487
+ ext_media_availability: ExtMediaAvailability3;
1488
+ features: Features3;
1489
+ sizes: Sizes3;
1490
+ original_info: OriginalInfo3;
1491
+ allow_download_status: AllowDownloadStatus3;
1492
+ media_results: MediaResults3;
1493
+ ext_alt_text?: string;
1494
+ }
1495
+
1496
+ interface ExtMediaAvailability3 {
1497
+ status: string;
1498
+ }
1499
+
1500
+ interface Features3 {
1501
+ all: All3;
1502
+ large: Large5;
1503
+ medium: Medium5;
1504
+ small: Small5;
1505
+ orig: Orig3;
1506
+ }
1507
+
1508
+ interface All3 {
1509
+ tags: Tag3[];
1510
+ }
1511
+
1512
+ interface Tag3 {
1513
+ user_id: string;
1514
+ name: string;
1515
+ screen_name: string;
1516
+ type: string;
1517
+ }
1518
+
1519
+ interface Large5 {
1520
+ faces: Face9[];
1521
+ }
1522
+
1523
+ interface Face9 {
1524
+ x: number;
1525
+ y: number;
1526
+ h: number;
1527
+ w: number;
1528
+ }
1529
+
1530
+ interface Medium5 {
1531
+ faces: Face10[];
1532
+ }
1533
+
1534
+ interface Face10 {
1535
+ x: number;
1536
+ y: number;
1537
+ h: number;
1538
+ w: number;
1539
+ }
1540
+
1541
+ interface Small5 {
1542
+ faces: Face11[];
1543
+ }
1544
+
1545
+ interface Face11 {
1546
+ x: number;
1547
+ y: number;
1548
+ h: number;
1549
+ w: number;
1550
+ }
1551
+
1552
+ interface Orig3 {
1553
+ faces: Face12[];
1554
+ }
1555
+
1556
+ interface Face12 {
1557
+ x: number;
1558
+ y: number;
1559
+ h: number;
1560
+ w: number;
1561
+ }
1562
+
1563
+ interface Sizes3 {
1564
+ large: Large6;
1565
+ medium: Medium6;
1566
+ small: Small6;
1567
+ thumb: Thumb3;
1568
+ }
1569
+
1570
+ interface Large6 {
1571
+ h: number;
1572
+ w: number;
1573
+ resize: string;
1574
+ }
1575
+
1576
+ interface Medium6 {
1577
+ h: number;
1578
+ w: number;
1579
+ resize: string;
1580
+ }
1581
+
1582
+ interface Small6 {
1583
+ h: number;
1584
+ w: number;
1585
+ resize: string;
1586
+ }
1587
+
1588
+ interface Thumb3 {
1589
+ h: number;
1590
+ w: number;
1591
+ resize: string;
1592
+ }
1593
+
1594
+ interface OriginalInfo3 {
1595
+ height: number;
1596
+ width: number;
1597
+ focus_rects: FocusRect3[];
1598
+ }
1599
+
1600
+ interface FocusRect3 {
1601
+ x: number;
1602
+ y: number;
1603
+ w: number;
1604
+ h: number;
1605
+ }
1606
+
1607
+ interface AllowDownloadStatus3 {
1608
+ allow_download: boolean;
1609
+ }
1610
+
1611
+ interface MediaResults3 {
1612
+ result: Result14;
1613
+ }
1614
+
1615
+ interface Result14 {
1616
+ media_key: string;
1617
+ }
1618
+
1619
+ interface UserMention3 {
1620
+ id_str: string;
1621
+ name: string;
1622
+ screen_name: string;
1623
+ indices: number[];
1624
+ }
1625
+
1626
+ interface ExtendedEntities2 {
1627
+ media: Medum4[];
1628
+ }
1629
+
1630
+ interface Medum4 {
1631
+ display_url: string;
1632
+ expanded_url: string;
1633
+ id_str: string;
1634
+ indices: number[];
1635
+ media_key: string;
1636
+ media_url_https: string;
1637
+ type: string;
1638
+ url: string;
1639
+ ext_media_availability: ExtMediaAvailability4;
1640
+ features: Features4;
1641
+ sizes: Sizes4;
1642
+ original_info: OriginalInfo4;
1643
+ allow_download_status: AllowDownloadStatus4;
1644
+ media_results: MediaResults4;
1645
+ ext_alt_text?: string;
1646
+ }
1647
+
1648
+ interface ExtMediaAvailability4 {
1649
+ status: string;
1650
+ }
1651
+
1652
+ interface Features4 {
1653
+ all: All4;
1654
+ large: Large7;
1655
+ medium: Medium7;
1656
+ small: Small7;
1657
+ orig: Orig4;
1658
+ }
1659
+
1660
+ interface All4 {
1661
+ tags: Tag4[];
1662
+ }
1663
+
1664
+ interface Tag4 {
1665
+ user_id: string;
1666
+ name: string;
1667
+ screen_name: string;
1668
+ type: string;
1669
+ }
1670
+
1671
+ interface Large7 {
1672
+ faces: Face13[];
1673
+ }
1674
+
1675
+ interface Face13 {
1676
+ x: number;
1677
+ y: number;
1678
+ h: number;
1679
+ w: number;
1680
+ }
1681
+
1682
+ interface Medium7 {
1683
+ faces: Face14[];
1684
+ }
1685
+
1686
+ interface Face14 {
1687
+ x: number;
1688
+ y: number;
1689
+ h: number;
1690
+ w: number;
1691
+ }
1692
+
1693
+ interface Small7 {
1694
+ faces: Face15[];
1695
+ }
1696
+
1697
+ interface Face15 {
1698
+ x: number;
1699
+ y: number;
1700
+ h: number;
1701
+ w: number;
1702
+ }
1703
+
1704
+ interface Orig4 {
1705
+ faces: Face16[];
1706
+ }
1707
+
1708
+ interface Face16 {
1709
+ x: number;
1710
+ y: number;
1711
+ h: number;
1712
+ w: number;
1713
+ }
1714
+
1715
+ interface Sizes4 {
1716
+ large: Large8;
1717
+ medium: Medium8;
1718
+ small: Small8;
1719
+ thumb: Thumb4;
1720
+ }
1721
+
1722
+ interface Large8 {
1723
+ h: number;
1724
+ w: number;
1725
+ resize: string;
1726
+ }
1727
+
1728
+ interface Medium8 {
1729
+ h: number;
1730
+ w: number;
1731
+ resize: string;
1732
+ }
1733
+
1734
+ interface Small8 {
1735
+ h: number;
1736
+ w: number;
1737
+ resize: string;
1738
+ }
1739
+
1740
+ interface Thumb4 {
1741
+ h: number;
1742
+ w: number;
1743
+ resize: string;
1744
+ }
1745
+
1746
+ interface OriginalInfo4 {
1747
+ height: number;
1748
+ width: number;
1749
+ focus_rects: FocusRect4[];
1750
+ }
1751
+
1752
+ interface FocusRect4 {
1753
+ x: number;
1754
+ y: number;
1755
+ w: number;
1756
+ h: number;
1757
+ }
1758
+
1759
+ interface AllowDownloadStatus4 {
1760
+ allow_download: boolean;
1761
+ }
1762
+
1763
+ interface MediaResults4 {
1764
+ result: Result15;
1765
+ }
1766
+
1767
+ interface Result15 {
1768
+ media_key: string;
1769
+ }
1770
+
1771
+ interface FeedbackInfo2 {
1772
+ feedbackKeys: string[];
1773
+ }
1774
+
1775
+ interface ClientEventInfo2 {
1776
+ component: string;
1777
+ element: string;
1778
+ details: Details2;
1779
+ }
1780
+
1781
+ interface Details2 {
1782
+ timelinesDetails: TimelinesDetails2;
1783
+ }
1784
+
1785
+ interface TimelinesDetails2 {
1786
+ injectionType: string;
1787
+ controllerData: string;
1788
+ }
1789
+
1790
+ interface Metadata {
1791
+ conversationMetadata: ConversationMetadata;
1792
+ }
1793
+
1794
+ interface ConversationMetadata {
1795
+ allTweetIds: string[];
1796
+ enableDeduplication: boolean;
1797
+ }
1798
+
1799
+ interface UsersResult {
1800
+ result: Result16;
1801
+ }
1802
+
1803
+ interface Result16 {
1804
+ __typename: string;
1805
+ id: string;
1806
+ rest_id: string;
1807
+ affiliates_highlighted_label: AffiliatesHighlightedLabel6;
1808
+ has_graduated_access: boolean;
1809
+ is_blue_verified: boolean;
1810
+ profile_image_shape: string;
1811
+ legacy: Legacy13;
1812
+ professional?: Professional5;
1813
+ tipjar_settings: TipjarSettings6;
1814
+ verified_phone_status: boolean;
1815
+ }
1816
+
1817
+ interface AffiliatesHighlightedLabel6 {}
1818
+
1819
+ interface Legacy13 {
1820
+ following?: boolean;
1821
+ can_dm: boolean;
1822
+ can_media_tag: boolean;
1823
+ created_at: string;
1824
+ default_profile: boolean;
1825
+ default_profile_image: boolean;
1826
+ description: string;
1827
+ entities: Entities10;
1828
+ fast_followers_count: number;
1829
+ favourites_count: number;
1830
+ followers_count: number;
1831
+ friends_count: number;
1832
+ has_custom_timelines: boolean;
1833
+ is_translator: boolean;
1834
+ listed_count: number;
1835
+ location: string;
1836
+ media_count: number;
1837
+ name: string;
1838
+ normal_followers_count: number;
1839
+ pinned_tweet_ids_str: string[];
1840
+ possibly_sensitive: boolean;
1841
+ profile_banner_url: string;
1842
+ profile_image_url_https: string;
1843
+ profile_interstitial_type: string;
1844
+ screen_name: string;
1845
+ statuses_count: number;
1846
+ translator_type: string;
1847
+ url: string;
1848
+ verified: boolean;
1849
+ verified_type?: string;
1850
+ want_retweets: boolean;
1851
+ withheld_in_countries: any[];
1852
+ }
1853
+
1854
+ interface Entities10 {
1855
+ description: Description6;
1856
+ url: Url18;
1857
+ }
1858
+
1859
+ interface Description6 {
1860
+ urls: Url17[];
1861
+ }
1862
+
1863
+ interface Url17 {
1864
+ display_url: string;
1865
+ expanded_url: string;
1866
+ url: string;
1867
+ indices: number[];
1868
+ }
1869
+
1870
+ interface Url18 {
1871
+ urls: Url19[];
1872
+ }
1873
+
1874
+ interface Url19 {
1875
+ display_url: string;
1876
+ expanded_url: string;
1877
+ url: string;
1878
+ indices: number[];
1879
+ }
1880
+
1881
+ interface Professional5 {
1882
+ rest_id: string;
1883
+ professional_type: string;
1884
+ category: Category4[];
1885
+ }
1886
+
1887
+ interface Category4 {
1888
+ id: number;
1889
+ name: string;
1890
+ icon_name: string;
1891
+ }
1892
+
1893
+ interface TipjarSettings6 {}
1894
+
1895
+ interface RichText {
1896
+ text: string;
1897
+ entities: any[];
1898
+ }
1899
+
1900
+ interface IconDisplayInfo {
1901
+ icon: string;
1902
+ tint: string;
1903
+ }
1904
+
1905
+ interface ColorConfig {
1906
+ background: string;
1907
+ border: string;
1908
+ text: string;
1909
+ }
1910
+
1911
+ interface ResponseObjects {
1912
+ feedbackActions: FeedbackAction[];
1913
+ }
1914
+
1915
+ interface FeedbackAction {
1916
+ key: string;
1917
+ value: Value3;
1918
+ }
1919
+
1920
+ interface Value3 {
1921
+ feedbackType: string;
1922
+ prompt: string;
1923
+ confirmation: string;
1924
+ feedbackUrl: string;
1925
+ hasUndoAction: boolean;
1926
+ childKeys?: string[];
1927
+ icon?: string;
1928
+ clientEventInfo?: ClientEventInfo3;
1929
+ }
1930
+
1931
+ interface ClientEventInfo3 {
1932
+ action: string;
1933
+ element: string;
1934
+ }
1935
+
1936
+ interface Metadata2 {
1937
+ scribeConfig: ScribeConfig;
1938
+ }
1939
+
1940
+ interface ScribeConfig {
1941
+ page: string;
1942
+ }