@youmind-openlab/rettiwt-api 1.0.1 → 1.0.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 (534) hide show
  1. package/dist/Rettiwt.d.ts +3 -0
  2. package/dist/Rettiwt.js +4 -0
  3. package/dist/Rettiwt.js.map +1 -1
  4. package/dist/browser/index.d.ts +1 -0
  5. package/dist/browser/index.js +3 -1
  6. package/dist/browser/index.js.map +1 -1
  7. package/dist/browser/services/BrowserFetcherService.d.ts +2 -0
  8. package/dist/browser/services/BrowserFetcherService.js +24 -0
  9. package/dist/browser/services/BrowserFetcherService.js.map +1 -1
  10. package/dist/browser/services/GraphQLQueryIdResolver.d.ts +34 -0
  11. package/dist/browser/services/GraphQLQueryIdResolver.js +112 -0
  12. package/dist/browser/services/GraphQLQueryIdResolver.js.map +1 -0
  13. package/dist/cli.js +2 -0
  14. package/dist/cli.js.map +1 -1
  15. package/dist/collections/Extractors.d.ts +6 -0
  16. package/dist/collections/Extractors.js +4 -0
  17. package/dist/collections/Extractors.js.map +1 -1
  18. package/dist/collections/Groups.js +3 -0
  19. package/dist/collections/Groups.js.map +1 -1
  20. package/dist/collections/Requests.js +3 -0
  21. package/dist/collections/Requests.js.map +1 -1
  22. package/dist/commands/Space.d.ts +10 -0
  23. package/dist/commands/Space.js +38 -0
  24. package/dist/commands/Space.js.map +1 -0
  25. package/dist/commands/User.js +13 -0
  26. package/dist/commands/User.js.map +1 -1
  27. package/dist/enums/Resource.d.ts +2 -0
  28. package/dist/enums/Resource.js +3 -0
  29. package/dist/enums/Resource.js.map +1 -1
  30. package/dist/index.d.ts +9 -1
  31. package/dist/index.js +6 -0
  32. package/dist/index.js.map +1 -1
  33. package/dist/models/args/FetchArgs.d.ts +3 -0
  34. package/dist/models/args/FetchArgs.js +6 -0
  35. package/dist/models/args/FetchArgs.js.map +1 -1
  36. package/dist/models/data/Space.d.ts +70 -0
  37. package/dist/models/data/Space.js +177 -0
  38. package/dist/models/data/Space.js.map +1 -0
  39. package/dist/models/data/UserAbout.d.ts +44 -0
  40. package/dist/models/data/UserAbout.js +129 -0
  41. package/dist/models/data/UserAbout.js.map +1 -0
  42. package/dist/requests/List.js +2 -2
  43. package/dist/requests/Space.d.ts +15 -0
  44. package/dist/requests/Space.js +74 -0
  45. package/dist/requests/Space.js.map +1 -0
  46. package/dist/requests/Tweet.js +6 -6
  47. package/dist/requests/User.d.ts +4 -0
  48. package/dist/requests/User.js +28 -14
  49. package/dist/requests/User.js.map +1 -1
  50. package/dist/services/public/SpaceService.d.ts +42 -0
  51. package/dist/services/public/SpaceService.js +60 -0
  52. package/dist/services/public/SpaceService.js.map +1 -0
  53. package/dist/services/public/UserService.d.ts +27 -0
  54. package/dist/services/public/UserService.js +36 -0
  55. package/dist/services/public/UserService.js.map +1 -1
  56. package/dist/types/args/FetchArgs.d.ts +35 -1
  57. package/dist/types/data/Space.d.ts +89 -0
  58. package/dist/types/data/Space.js +3 -0
  59. package/dist/types/data/Space.js.map +1 -0
  60. package/dist/types/data/UserAbout.d.ts +68 -0
  61. package/dist/types/data/UserAbout.js +3 -0
  62. package/dist/types/data/UserAbout.js.map +1 -0
  63. package/dist/types/raw/base/Space.d.ts +43 -22
  64. package/dist/types/raw/space/AudioSpaceById.d.ts +50 -0
  65. package/dist/types/raw/space/AudioSpaceById.js +4 -0
  66. package/dist/types/raw/space/AudioSpaceById.js.map +1 -0
  67. package/dist/types/raw/space/Details.d.ts +2 -309
  68. package/dist/types/raw/user/About.d.ts +65 -0
  69. package/dist/types/raw/user/About.js +4 -0
  70. package/dist/types/raw/user/About.js.map +1 -0
  71. package/package.json +4 -3
  72. package/src/Rettiwt.ts +5 -0
  73. package/src/browser/index.ts +1 -0
  74. package/src/browser/services/BrowserFetcherService.ts +30 -0
  75. package/src/browser/services/GraphQLQueryIdResolver.ts +115 -0
  76. package/src/cli.ts +2 -0
  77. package/src/collections/Extractors.ts +7 -0
  78. package/src/collections/Groups.ts +3 -0
  79. package/src/collections/Requests.ts +5 -0
  80. package/src/commands/Space.ts +46 -0
  81. package/src/commands/User.ts +13 -0
  82. package/src/enums/Resource.ts +4 -0
  83. package/src/index.ts +9 -1
  84. package/src/models/args/FetchArgs.ts +6 -0
  85. package/src/models/data/Space.ts +201 -0
  86. package/src/models/data/UserAbout.ts +161 -0
  87. package/src/requests/List.ts +2 -2
  88. package/src/requests/Space.ts +76 -0
  89. package/src/requests/Tweet.ts +6 -6
  90. package/src/requests/User.ts +29 -14
  91. package/src/services/public/SpaceService.ts +65 -0
  92. package/src/services/public/UserService.ts +43 -0
  93. package/src/types/args/FetchArgs.ts +41 -1
  94. package/src/types/data/Space.ts +122 -0
  95. package/src/types/data/UserAbout.ts +87 -0
  96. package/src/types/raw/base/Space.ts +42 -22
  97. package/src/types/raw/space/AudioSpaceById.ts +57 -0
  98. package/src/types/raw/space/Details.ts +3 -352
  99. package/src/types/raw/user/About.ts +77 -0
  100. package/dist/browser/browser/RettiwtBrowser.d.ts +0 -138
  101. package/dist/browser/browser/RettiwtBrowser.js +0 -165
  102. package/dist/browser/browser/RettiwtBrowser.js.map +0 -1
  103. package/dist/browser/browser/adapters/Base64Adapter.d.ts +0 -24
  104. package/dist/browser/browser/adapters/Base64Adapter.js +0 -29
  105. package/dist/browser/browser/adapters/Base64Adapter.js.map +0 -1
  106. package/dist/browser/browser/adapters/CookieProvider.d.ts +0 -42
  107. package/dist/browser/browser/adapters/CookieProvider.js +0 -50
  108. package/dist/browser/browser/adapters/CookieProvider.js.map +0 -1
  109. package/dist/browser/browser/adapters/DomAdapter.d.ts +0 -17
  110. package/dist/browser/browser/adapters/DomAdapter.js +0 -26
  111. package/dist/browser/browser/adapters/DomAdapter.js.map +0 -1
  112. package/dist/browser/browser/config/BrowserRettiwtConfig.d.ts +0 -103
  113. package/dist/browser/browser/config/BrowserRettiwtConfig.js +0 -122
  114. package/dist/browser/browser/config/BrowserRettiwtConfig.js.map +0 -1
  115. package/dist/browser/browser/index.d.ts +0 -87
  116. package/dist/browser/browser/index.js +0 -88
  117. package/dist/browser/browser/index.js.map +0 -1
  118. package/dist/browser/browser/services/BrowserAuthService.d.ts +0 -77
  119. package/dist/browser/browser/services/BrowserAuthService.js +0 -135
  120. package/dist/browser/browser/services/BrowserAuthService.js.map +0 -1
  121. package/dist/browser/browser/services/BrowserDirectMessageService.d.ts +0 -37
  122. package/dist/browser/browser/services/BrowserDirectMessageService.js +0 -59
  123. package/dist/browser/browser/services/BrowserDirectMessageService.js.map +0 -1
  124. package/dist/browser/browser/services/BrowserFetcherService.d.ts +0 -91
  125. package/dist/browser/browser/services/BrowserFetcherService.js +0 -290
  126. package/dist/browser/browser/services/BrowserFetcherService.js.map +0 -1
  127. package/dist/browser/browser/services/BrowserListService.d.ts +0 -59
  128. package/dist/browser/browser/services/BrowserListService.js +0 -100
  129. package/dist/browser/browser/services/BrowserListService.js.map +0 -1
  130. package/dist/browser/browser/services/BrowserTweetService.d.ts +0 -139
  131. package/dist/browser/browser/services/BrowserTweetService.js +0 -247
  132. package/dist/browser/browser/services/BrowserTweetService.js.map +0 -1
  133. package/dist/browser/browser/services/BrowserUserService.d.ts +0 -104
  134. package/dist/browser/browser/services/BrowserUserService.js +0 -193
  135. package/dist/browser/browser/services/BrowserUserService.js.map +0 -1
  136. package/dist/browser/collections/Extractors.d.ts +0 -116
  137. package/dist/browser/collections/Extractors.js +0 -70
  138. package/dist/browser/collections/Extractors.js.map +0 -1
  139. package/dist/browser/collections/Groups.d.ts +0 -19
  140. package/dist/browser/collections/Groups.js +0 -79
  141. package/dist/browser/collections/Groups.js.map +0 -1
  142. package/dist/browser/collections/Requests.d.ts +0 -12
  143. package/dist/browser/collections/Requests.js +0 -69
  144. package/dist/browser/collections/Requests.js.map +0 -1
  145. package/dist/browser/collections/Tweet.d.ts +0 -10
  146. package/dist/browser/collections/Tweet.js +0 -14
  147. package/dist/browser/collections/Tweet.js.map +0 -1
  148. package/dist/browser/enums/Api.d.ts +0 -10
  149. package/dist/browser/enums/Api.js +0 -12
  150. package/dist/browser/enums/Api.js.map +0 -1
  151. package/dist/browser/enums/Authentication.d.ts +0 -10
  152. package/dist/browser/enums/Authentication.js +0 -12
  153. package/dist/browser/enums/Authentication.js.map +0 -1
  154. package/dist/browser/enums/Data.d.ts +0 -13
  155. package/dist/browser/enums/Data.js +0 -15
  156. package/dist/browser/enums/Data.js.map +0 -1
  157. package/dist/browser/enums/Logging.d.ts +0 -14
  158. package/dist/browser/enums/Logging.js +0 -16
  159. package/dist/browser/enums/Logging.js.map +0 -1
  160. package/dist/browser/enums/Media.d.ts +0 -10
  161. package/dist/browser/enums/Media.js +0 -12
  162. package/dist/browser/enums/Media.js.map +0 -1
  163. package/dist/browser/enums/Notification.d.ts +0 -12
  164. package/dist/browser/enums/Notification.js +0 -14
  165. package/dist/browser/enums/Notification.js.map +0 -1
  166. package/dist/browser/enums/Resource.d.ts +0 -60
  167. package/dist/browser/enums/Resource.js +0 -67
  168. package/dist/browser/enums/Resource.js.map +0 -1
  169. package/dist/browser/enums/Tweet.d.ts +0 -8
  170. package/dist/browser/enums/Tweet.js +0 -10
  171. package/dist/browser/enums/Tweet.js.map +0 -1
  172. package/dist/browser/enums/raw/Analytics.d.ts +0 -31
  173. package/dist/browser/enums/raw/Analytics.js +0 -34
  174. package/dist/browser/enums/raw/Analytics.js.map +0 -1
  175. package/dist/browser/enums/raw/Media.d.ts +0 -10
  176. package/dist/browser/enums/raw/Media.js +0 -12
  177. package/dist/browser/enums/raw/Media.js.map +0 -1
  178. package/dist/browser/enums/raw/Notification.d.ts +0 -11
  179. package/dist/browser/enums/raw/Notification.js +0 -13
  180. package/dist/browser/enums/raw/Notification.js.map +0 -1
  181. package/dist/browser/enums/raw/Tweet.d.ts +0 -19
  182. package/dist/browser/enums/raw/Tweet.js +0 -22
  183. package/dist/browser/enums/raw/Tweet.js.map +0 -1
  184. package/dist/browser/helper/JsonUtils.d.ts +0 -21
  185. package/dist/browser/helper/JsonUtils.js +0 -66
  186. package/dist/browser/helper/JsonUtils.js.map +0 -1
  187. package/dist/browser/models/RettiwtConfig.d.ts +0 -51
  188. package/dist/browser/models/RettiwtConfig.js +0 -84
  189. package/dist/browser/models/RettiwtConfig.js.map +0 -1
  190. package/dist/browser/models/args/FetchArgs.d.ts +0 -74
  191. package/dist/browser/models/args/FetchArgs.js +0 -149
  192. package/dist/browser/models/args/FetchArgs.js.map +0 -1
  193. package/dist/browser/models/args/PostArgs.d.ts +0 -64
  194. package/dist/browser/models/args/PostArgs.js +0 -84
  195. package/dist/browser/models/args/PostArgs.js.map +0 -1
  196. package/dist/browser/models/args/ProfileArgs.d.ts +0 -16
  197. package/dist/browser/models/args/ProfileArgs.js +0 -59
  198. package/dist/browser/models/args/ProfileArgs.js.map +0 -1
  199. package/dist/browser/models/auth/AuthCookie.d.ts +0 -21
  200. package/dist/browser/models/auth/AuthCookie.js +0 -51
  201. package/dist/browser/models/auth/AuthCookie.js.map +0 -1
  202. package/dist/browser/models/auth/AuthCredential.d.ts +0 -30
  203. package/dist/browser/models/auth/AuthCredential.js +0 -74
  204. package/dist/browser/models/auth/AuthCredential.js.map +0 -1
  205. package/dist/browser/models/data/Analytics.d.ts +0 -43
  206. package/dist/browser/models/data/Analytics.js +0 -88
  207. package/dist/browser/models/data/Analytics.js.map +0 -1
  208. package/dist/browser/models/data/BookmarkFolder.d.ts +0 -31
  209. package/dist/browser/models/data/BookmarkFolder.js +0 -60
  210. package/dist/browser/models/data/BookmarkFolder.js.map +0 -1
  211. package/dist/browser/models/data/Conversation.d.ts +0 -93
  212. package/dist/browser/models/data/Conversation.js +0 -289
  213. package/dist/browser/models/data/Conversation.js.map +0 -1
  214. package/dist/browser/models/data/CursoredData.d.ts +0 -27
  215. package/dist/browser/models/data/CursoredData.js +0 -59
  216. package/dist/browser/models/data/CursoredData.js.map +0 -1
  217. package/dist/browser/models/data/DirectMessage.d.ts +0 -105
  218. package/dist/browser/models/data/DirectMessage.js +0 -280
  219. package/dist/browser/models/data/DirectMessage.js.map +0 -1
  220. package/dist/browser/models/data/Inbox.d.ts +0 -44
  221. package/dist/browser/models/data/Inbox.js +0 -102
  222. package/dist/browser/models/data/Inbox.js.map +0 -1
  223. package/dist/browser/models/data/List.d.ts +0 -48
  224. package/dist/browser/models/data/List.js +0 -97
  225. package/dist/browser/models/data/List.js.map +0 -1
  226. package/dist/browser/models/data/Notification.d.ts +0 -36
  227. package/dist/browser/models/data/Notification.js +0 -72
  228. package/dist/browser/models/data/Notification.js.map +0 -1
  229. package/dist/browser/models/data/Tweet.d.ts +0 -129
  230. package/dist/browser/models/data/Tweet.js +0 -338
  231. package/dist/browser/models/data/Tweet.js.map +0 -1
  232. package/dist/browser/models/data/User.d.ts +0 -62
  233. package/dist/browser/models/data/User.js +0 -167
  234. package/dist/browser/models/data/User.js.map +0 -1
  235. package/dist/browser/models/errors/TwitterError.d.ts +0 -37
  236. package/dist/browser/models/errors/TwitterError.js +0 -55
  237. package/dist/browser/models/errors/TwitterError.js.map +0 -1
  238. package/dist/browser/models/params/Variables.d.ts +0 -41
  239. package/dist/browser/models/params/Variables.js +0 -55
  240. package/dist/browser/models/params/Variables.js.map +0 -1
  241. package/dist/browser/requests/DirectMessage.d.ts +0 -28
  242. package/dist/browser/requests/DirectMessage.js +0 -142
  243. package/dist/browser/requests/DirectMessage.js.map +0 -1
  244. package/dist/browser/requests/List.d.ts +0 -34
  245. package/dist/browser/requests/List.js +0 -196
  246. package/dist/browser/requests/List.js.map +0 -1
  247. package/dist/browser/requests/Media.d.ts +0 -21
  248. package/dist/browser/requests/Media.js +0 -75
  249. package/dist/browser/requests/Media.js.map +0 -1
  250. package/dist/browser/requests/Tweet.d.ts +0 -84
  251. package/dist/browser/requests/Tweet.js +0 -593
  252. package/dist/browser/requests/Tweet.js.map +0 -1
  253. package/dist/browser/requests/User.d.ts +0 -143
  254. package/dist/browser/requests/User.js +0 -1175
  255. package/dist/browser/requests/User.js.map +0 -1
  256. package/dist/browser/services/internal/AuthService.d.ts +0 -60
  257. package/dist/browser/services/internal/AuthService.js +0 -98
  258. package/dist/browser/services/internal/AuthService.js.map +0 -1
  259. package/dist/browser/services/internal/ErrorService.d.ts +0 -24
  260. package/dist/browser/services/internal/ErrorService.js +0 -37
  261. package/dist/browser/services/internal/ErrorService.js.map +0 -1
  262. package/dist/browser/services/internal/LogService.d.ts +0 -18
  263. package/dist/browser/services/internal/LogService.js +0 -30
  264. package/dist/browser/services/internal/LogService.js.map +0 -1
  265. package/dist/browser/types/ErrorHandler.d.ts +0 -13
  266. package/dist/browser/types/ErrorHandler.js +0 -2
  267. package/dist/browser/types/ErrorHandler.js.map +0 -1
  268. package/dist/browser/types/RettiwtConfig.d.ts +0 -42
  269. package/dist/browser/types/RettiwtConfig.js +0 -2
  270. package/dist/browser/types/RettiwtConfig.js.map +0 -1
  271. package/dist/browser/types/args/FetchArgs.d.ts +0 -196
  272. package/dist/browser/types/args/FetchArgs.js +0 -2
  273. package/dist/browser/types/args/FetchArgs.js.map +0 -1
  274. package/dist/browser/types/args/PostArgs.d.ts +0 -129
  275. package/dist/browser/types/args/PostArgs.js +0 -2
  276. package/dist/browser/types/args/PostArgs.js.map +0 -1
  277. package/dist/browser/types/args/ProfileArgs.d.ts +0 -30
  278. package/dist/browser/types/args/ProfileArgs.js +0 -2
  279. package/dist/browser/types/args/ProfileArgs.js.map +0 -1
  280. package/dist/browser/types/auth/AuthCookie.d.ts +0 -15
  281. package/dist/browser/types/auth/AuthCookie.js +0 -2
  282. package/dist/browser/types/auth/AuthCookie.js.map +0 -1
  283. package/dist/browser/types/auth/AuthCredential.d.ts +0 -23
  284. package/dist/browser/types/auth/AuthCredential.js +0 -2
  285. package/dist/browser/types/auth/AuthCredential.js.map +0 -1
  286. package/dist/browser/types/auth/TransactionHeader.d.ts +0 -6
  287. package/dist/browser/types/auth/TransactionHeader.js +0 -3
  288. package/dist/browser/types/auth/TransactionHeader.js.map +0 -1
  289. package/dist/browser/types/data/Analytics.d.ts +0 -42
  290. package/dist/browser/types/data/Analytics.js +0 -2
  291. package/dist/browser/types/data/Analytics.js.map +0 -1
  292. package/dist/browser/types/data/BookmarkFolder.d.ts +0 -11
  293. package/dist/browser/types/data/BookmarkFolder.js +0 -2
  294. package/dist/browser/types/data/BookmarkFolder.js.map +0 -1
  295. package/dist/browser/types/data/Conversation.d.ts +0 -32
  296. package/dist/browser/types/data/Conversation.js +0 -2
  297. package/dist/browser/types/data/Conversation.js.map +0 -1
  298. package/dist/browser/types/data/CursoredData.d.ts +0 -20
  299. package/dist/browser/types/data/CursoredData.js +0 -2
  300. package/dist/browser/types/data/CursoredData.js.map +0 -1
  301. package/dist/browser/types/data/DirectMessage.d.ts +0 -25
  302. package/dist/browser/types/data/DirectMessage.js +0 -2
  303. package/dist/browser/types/data/DirectMessage.js.map +0 -1
  304. package/dist/browser/types/data/Inbox.d.ts +0 -18
  305. package/dist/browser/types/data/Inbox.js +0 -2
  306. package/dist/browser/types/data/Inbox.js.map +0 -1
  307. package/dist/browser/types/data/List.d.ts +0 -25
  308. package/dist/browser/types/data/List.js +0 -2
  309. package/dist/browser/types/data/List.js.map +0 -1
  310. package/dist/browser/types/data/Notification.d.ts +0 -20
  311. package/dist/browser/types/data/Notification.js +0 -2
  312. package/dist/browser/types/data/Notification.js.map +0 -1
  313. package/dist/browser/types/data/Tweet.d.ts +0 -73
  314. package/dist/browser/types/data/Tweet.js +0 -2
  315. package/dist/browser/types/data/Tweet.js.map +0 -1
  316. package/dist/browser/types/data/User.d.ts +0 -39
  317. package/dist/browser/types/data/User.js +0 -2
  318. package/dist/browser/types/data/User.js.map +0 -1
  319. package/dist/browser/types/errors/TwitterError.d.ts +0 -30
  320. package/dist/browser/types/errors/TwitterError.js +0 -2
  321. package/dist/browser/types/errors/TwitterError.js.map +0 -1
  322. package/dist/browser/types/params/Variables.d.ts +0 -27
  323. package/dist/browser/types/params/Variables.js +0 -2
  324. package/dist/browser/types/params/Variables.js.map +0 -1
  325. package/dist/browser/types/raw/base/Analytic.d.ts +0 -26
  326. package/dist/browser/types/raw/base/Analytic.js +0 -3
  327. package/dist/browser/types/raw/base/Analytic.js.map +0 -1
  328. package/dist/browser/types/raw/base/BookmarkFolder.d.ts +0 -11
  329. package/dist/browser/types/raw/base/BookmarkFolder.js +0 -2
  330. package/dist/browser/types/raw/base/BookmarkFolder.js.map +0 -1
  331. package/dist/browser/types/raw/base/Cursor.d.ts +0 -11
  332. package/dist/browser/types/raw/base/Cursor.js +0 -3
  333. package/dist/browser/types/raw/base/Cursor.js.map +0 -1
  334. package/dist/browser/types/raw/base/Error.d.ts +0 -33
  335. package/dist/browser/types/raw/base/Error.js +0 -3
  336. package/dist/browser/types/raw/base/Error.js.map +0 -1
  337. package/dist/browser/types/raw/base/LimitedVisibilityTweet.d.ts +0 -32
  338. package/dist/browser/types/raw/base/LimitedVisibilityTweet.js +0 -3
  339. package/dist/browser/types/raw/base/LimitedVisibilityTweet.js.map +0 -1
  340. package/dist/browser/types/raw/base/List.d.ts +0 -43
  341. package/dist/browser/types/raw/base/List.js +0 -3
  342. package/dist/browser/types/raw/base/List.js.map +0 -1
  343. package/dist/browser/types/raw/base/Media.d.ts +0 -43
  344. package/dist/browser/types/raw/base/Media.js +0 -3
  345. package/dist/browser/types/raw/base/Media.js.map +0 -1
  346. package/dist/browser/types/raw/base/Message.d.ts +0 -16
  347. package/dist/browser/types/raw/base/Message.js +0 -3
  348. package/dist/browser/types/raw/base/Message.js.map +0 -1
  349. package/dist/browser/types/raw/base/Notification.d.ts +0 -55
  350. package/dist/browser/types/raw/base/Notification.js +0 -3
  351. package/dist/browser/types/raw/base/Notification.js.map +0 -1
  352. package/dist/browser/types/raw/base/Space.d.ts +0 -32
  353. package/dist/browser/types/raw/base/Space.js +0 -3
  354. package/dist/browser/types/raw/base/Space.js.map +0 -1
  355. package/dist/browser/types/raw/base/Tweet.d.ts +0 -119
  356. package/dist/browser/types/raw/base/Tweet.js +0 -3
  357. package/dist/browser/types/raw/base/Tweet.js.map +0 -1
  358. package/dist/browser/types/raw/base/User.d.ts +0 -155
  359. package/dist/browser/types/raw/base/User.js +0 -3
  360. package/dist/browser/types/raw/base/User.js.map +0 -1
  361. package/dist/browser/types/raw/composite/DataResult.d.ts +0 -8
  362. package/dist/browser/types/raw/composite/DataResult.js +0 -2
  363. package/dist/browser/types/raw/composite/DataResult.js.map +0 -1
  364. package/dist/browser/types/raw/composite/TimelineList.d.ts +0 -9
  365. package/dist/browser/types/raw/composite/TimelineList.js +0 -2
  366. package/dist/browser/types/raw/composite/TimelineList.js.map +0 -1
  367. package/dist/browser/types/raw/composite/TimelineTweet.d.ts +0 -11
  368. package/dist/browser/types/raw/composite/TimelineTweet.js +0 -3
  369. package/dist/browser/types/raw/composite/TimelineTweet.js.map +0 -1
  370. package/dist/browser/types/raw/composite/TimelineUser.d.ts +0 -10
  371. package/dist/browser/types/raw/composite/TimelineUser.js +0 -3
  372. package/dist/browser/types/raw/composite/TimelineUser.js.map +0 -1
  373. package/dist/browser/types/raw/dm/Conversation.d.ts +0 -55
  374. package/dist/browser/types/raw/dm/Conversation.js +0 -3
  375. package/dist/browser/types/raw/dm/Conversation.js.map +0 -1
  376. package/dist/browser/types/raw/dm/InboxInitial.d.ts +0 -137
  377. package/dist/browser/types/raw/dm/InboxInitial.js +0 -3
  378. package/dist/browser/types/raw/dm/InboxInitial.js.map +0 -1
  379. package/dist/browser/types/raw/dm/InboxTimeline.d.ts +0 -287
  380. package/dist/browser/types/raw/dm/InboxTimeline.js +0 -3
  381. package/dist/browser/types/raw/dm/InboxTimeline.js.map +0 -1
  382. package/dist/browser/types/raw/dm/UserUpdates.d.ts +0 -41
  383. package/dist/browser/types/raw/dm/UserUpdates.js +0 -3
  384. package/dist/browser/types/raw/dm/UserUpdates.js.map +0 -1
  385. package/dist/browser/types/raw/generic/Response.d.ts +0 -10
  386. package/dist/browser/types/raw/generic/Response.js +0 -2
  387. package/dist/browser/types/raw/generic/Response.js.map +0 -1
  388. package/dist/browser/types/raw/list/AddMember.d.ts +0 -151
  389. package/dist/browser/types/raw/list/AddMember.js +0 -3
  390. package/dist/browser/types/raw/list/AddMember.js.map +0 -1
  391. package/dist/browser/types/raw/list/Details.d.ts +0 -153
  392. package/dist/browser/types/raw/list/Details.js +0 -3
  393. package/dist/browser/types/raw/list/Details.js.map +0 -1
  394. package/dist/browser/types/raw/list/Members.d.ts +0 -134
  395. package/dist/browser/types/raw/list/Members.js +0 -3
  396. package/dist/browser/types/raw/list/Members.js.map +0 -1
  397. package/dist/browser/types/raw/list/RemoveMember.d.ts +0 -150
  398. package/dist/browser/types/raw/list/RemoveMember.js +0 -3
  399. package/dist/browser/types/raw/list/RemoveMember.js.map +0 -1
  400. package/dist/browser/types/raw/list/Tweets.d.ts +0 -1968
  401. package/dist/browser/types/raw/list/Tweets.js +0 -3
  402. package/dist/browser/types/raw/list/Tweets.js.map +0 -1
  403. package/dist/browser/types/raw/media/FinalizeUpload.d.ts +0 -18
  404. package/dist/browser/types/raw/media/FinalizeUpload.js +0 -3
  405. package/dist/browser/types/raw/media/FinalizeUpload.js.map +0 -1
  406. package/dist/browser/types/raw/media/InitalizeUpload.d.ts +0 -10
  407. package/dist/browser/types/raw/media/InitalizeUpload.js +0 -3
  408. package/dist/browser/types/raw/media/InitalizeUpload.js.map +0 -1
  409. package/dist/browser/types/raw/media/LiveVideoStream.d.ts +0 -19
  410. package/dist/browser/types/raw/media/LiveVideoStream.js +0 -3
  411. package/dist/browser/types/raw/media/LiveVideoStream.js.map +0 -1
  412. package/dist/browser/types/raw/space/Details.d.ts +0 -315
  413. package/dist/browser/types/raw/space/Details.js +0 -3
  414. package/dist/browser/types/raw/space/Details.js.map +0 -1
  415. package/dist/browser/types/raw/tweet/Bookmark.d.ts +0 -12
  416. package/dist/browser/types/raw/tweet/Bookmark.js +0 -3
  417. package/dist/browser/types/raw/tweet/Bookmark.js.map +0 -1
  418. package/dist/browser/types/raw/tweet/Details.d.ts +0 -183
  419. package/dist/browser/types/raw/tweet/Details.js +0 -3
  420. package/dist/browser/types/raw/tweet/Details.js.map +0 -1
  421. package/dist/browser/types/raw/tweet/DetailsBulk.d.ts +0 -288
  422. package/dist/browser/types/raw/tweet/DetailsBulk.js +0 -3
  423. package/dist/browser/types/raw/tweet/DetailsBulk.js.map +0 -1
  424. package/dist/browser/types/raw/tweet/Like.d.ts +0 -12
  425. package/dist/browser/types/raw/tweet/Like.js +0 -3
  426. package/dist/browser/types/raw/tweet/Like.js.map +0 -1
  427. package/dist/browser/types/raw/tweet/Likers.d.ts +0 -170
  428. package/dist/browser/types/raw/tweet/Likers.js +0 -3
  429. package/dist/browser/types/raw/tweet/Likers.js.map +0 -1
  430. package/dist/browser/types/raw/tweet/Post.d.ts +0 -133
  431. package/dist/browser/types/raw/tweet/Post.js +0 -3
  432. package/dist/browser/types/raw/tweet/Post.js.map +0 -1
  433. package/dist/browser/types/raw/tweet/Replies.d.ts +0 -465
  434. package/dist/browser/types/raw/tweet/Replies.js +0 -3
  435. package/dist/browser/types/raw/tweet/Replies.js.map +0 -1
  436. package/dist/browser/types/raw/tweet/Retweet.d.ts +0 -25
  437. package/dist/browser/types/raw/tweet/Retweet.js +0 -3
  438. package/dist/browser/types/raw/tweet/Retweet.js.map +0 -1
  439. package/dist/browser/types/raw/tweet/Retweeters.d.ts +0 -177
  440. package/dist/browser/types/raw/tweet/Retweeters.js +0 -3
  441. package/dist/browser/types/raw/tweet/Retweeters.js.map +0 -1
  442. package/dist/browser/types/raw/tweet/Schedule.d.ts +0 -15
  443. package/dist/browser/types/raw/tweet/Schedule.js +0 -3
  444. package/dist/browser/types/raw/tweet/Schedule.js.map +0 -1
  445. package/dist/browser/types/raw/tweet/Search.d.ts +0 -518
  446. package/dist/browser/types/raw/tweet/Search.js +0 -3
  447. package/dist/browser/types/raw/tweet/Search.js.map +0 -1
  448. package/dist/browser/types/raw/tweet/Unbookmark.d.ts +0 -11
  449. package/dist/browser/types/raw/tweet/Unbookmark.js +0 -3
  450. package/dist/browser/types/raw/tweet/Unbookmark.js.map +0 -1
  451. package/dist/browser/types/raw/tweet/Unlike.d.ts +0 -12
  452. package/dist/browser/types/raw/tweet/Unlike.js +0 -3
  453. package/dist/browser/types/raw/tweet/Unlike.js.map +0 -1
  454. package/dist/browser/types/raw/tweet/Unpost.d.ts +0 -17
  455. package/dist/browser/types/raw/tweet/Unpost.js +0 -3
  456. package/dist/browser/types/raw/tweet/Unpost.js.map +0 -1
  457. package/dist/browser/types/raw/tweet/Unretweet.d.ts +0 -25
  458. package/dist/browser/types/raw/tweet/Unretweet.js +0 -3
  459. package/dist/browser/types/raw/tweet/Unretweet.js.map +0 -1
  460. package/dist/browser/types/raw/tweet/Unschedule.d.ts +0 -12
  461. package/dist/browser/types/raw/tweet/Unschedule.js +0 -3
  462. package/dist/browser/types/raw/tweet/Unschedule.js.map +0 -1
  463. package/dist/browser/types/raw/user/Affiliates.d.ts +0 -154
  464. package/dist/browser/types/raw/user/Affiliates.js +0 -3
  465. package/dist/browser/types/raw/user/Affiliates.js.map +0 -1
  466. package/dist/browser/types/raw/user/Analytics.d.ts +0 -20
  467. package/dist/browser/types/raw/user/Analytics.js +0 -2
  468. package/dist/browser/types/raw/user/Analytics.js.map +0 -1
  469. package/dist/browser/types/raw/user/BookmarkFolderTweets.d.ts +0 -44
  470. package/dist/browser/types/raw/user/BookmarkFolderTweets.js +0 -3
  471. package/dist/browser/types/raw/user/BookmarkFolderTweets.js.map +0 -1
  472. package/dist/browser/types/raw/user/BookmarkFolders.d.ts +0 -33
  473. package/dist/browser/types/raw/user/BookmarkFolders.js +0 -3
  474. package/dist/browser/types/raw/user/BookmarkFolders.js.map +0 -1
  475. package/dist/browser/types/raw/user/Bookmarks.d.ts +0 -550
  476. package/dist/browser/types/raw/user/Bookmarks.js +0 -3
  477. package/dist/browser/types/raw/user/Bookmarks.js.map +0 -1
  478. package/dist/browser/types/raw/user/Details.d.ts +0 -157
  479. package/dist/browser/types/raw/user/Details.js +0 -3
  480. package/dist/browser/types/raw/user/Details.js.map +0 -1
  481. package/dist/browser/types/raw/user/DetailsBulk.d.ts +0 -91
  482. package/dist/browser/types/raw/user/DetailsBulk.js +0 -3
  483. package/dist/browser/types/raw/user/DetailsBulk.js.map +0 -1
  484. package/dist/browser/types/raw/user/Follow.d.ts +0 -248
  485. package/dist/browser/types/raw/user/Follow.js +0 -3
  486. package/dist/browser/types/raw/user/Follow.js.map +0 -1
  487. package/dist/browser/types/raw/user/Followed.d.ts +0 -1666
  488. package/dist/browser/types/raw/user/Followed.js +0 -3
  489. package/dist/browser/types/raw/user/Followed.js.map +0 -1
  490. package/dist/browser/types/raw/user/Followers.d.ts +0 -182
  491. package/dist/browser/types/raw/user/Followers.js +0 -3
  492. package/dist/browser/types/raw/user/Followers.js.map +0 -1
  493. package/dist/browser/types/raw/user/Following.d.ts +0 -182
  494. package/dist/browser/types/raw/user/Following.js +0 -3
  495. package/dist/browser/types/raw/user/Following.js.map +0 -1
  496. package/dist/browser/types/raw/user/Highlights.d.ts +0 -1106
  497. package/dist/browser/types/raw/user/Highlights.js +0 -3
  498. package/dist/browser/types/raw/user/Highlights.js.map +0 -1
  499. package/dist/browser/types/raw/user/Likes.d.ts +0 -1065
  500. package/dist/browser/types/raw/user/Likes.js +0 -3
  501. package/dist/browser/types/raw/user/Likes.js.map +0 -1
  502. package/dist/browser/types/raw/user/Lists.d.ts +0 -319
  503. package/dist/browser/types/raw/user/Lists.js +0 -3
  504. package/dist/browser/types/raw/user/Lists.js.map +0 -1
  505. package/dist/browser/types/raw/user/Media.d.ts +0 -1492
  506. package/dist/browser/types/raw/user/Media.js +0 -3
  507. package/dist/browser/types/raw/user/Media.js.map +0 -1
  508. package/dist/browser/types/raw/user/Notifications.d.ts +0 -428
  509. package/dist/browser/types/raw/user/Notifications.js +0 -3
  510. package/dist/browser/types/raw/user/Notifications.js.map +0 -1
  511. package/dist/browser/types/raw/user/ProfileUpdate.d.ts +0 -75
  512. package/dist/browser/types/raw/user/ProfileUpdate.js +0 -3
  513. package/dist/browser/types/raw/user/ProfileUpdate.js.map +0 -1
  514. package/dist/browser/types/raw/user/Recommended.d.ts +0 -1991
  515. package/dist/browser/types/raw/user/Recommended.js +0 -3
  516. package/dist/browser/types/raw/user/Recommended.js.map +0 -1
  517. package/dist/browser/types/raw/user/Scheduled.d.ts +0 -31
  518. package/dist/browser/types/raw/user/Scheduled.js +0 -3
  519. package/dist/browser/types/raw/user/Scheduled.js.map +0 -1
  520. package/dist/browser/types/raw/user/Search.d.ts +0 -194
  521. package/dist/browser/types/raw/user/Search.js +0 -3
  522. package/dist/browser/types/raw/user/Search.js.map +0 -1
  523. package/dist/browser/types/raw/user/Subscriptions.d.ts +0 -151
  524. package/dist/browser/types/raw/user/Subscriptions.js +0 -3
  525. package/dist/browser/types/raw/user/Subscriptions.js.map +0 -1
  526. package/dist/browser/types/raw/user/Tweets.d.ts +0 -1065
  527. package/dist/browser/types/raw/user/Tweets.js +0 -3
  528. package/dist/browser/types/raw/user/Tweets.js.map +0 -1
  529. package/dist/browser/types/raw/user/TweetsAndReplies.d.ts +0 -1065
  530. package/dist/browser/types/raw/user/TweetsAndReplies.js +0 -3
  531. package/dist/browser/types/raw/user/TweetsAndReplies.js.map +0 -1
  532. package/dist/browser/types/raw/user/Unfollow.d.ts +0 -248
  533. package/dist/browser/types/raw/user/Unfollow.js +0 -3
  534. package/dist/browser/types/raw/user/Unfollow.js.map +0 -1
@@ -9,6 +9,7 @@ export const AllowGuestAuthenticationGroup = [
9
9
  ResourceType.TWEET_DETAILS,
10
10
  ResourceType.USER_DETAILS_BY_USERNAME,
11
11
  ResourceType.USER_TIMELINE,
12
+ ResourceType.SPACE_DETAILS,
12
13
  ];
13
14
 
14
15
  /**
@@ -23,6 +24,7 @@ export const FetchResourcesGroup = [
23
24
  ResourceType.DM_CONVERSATION,
24
25
  ResourceType.DM_INBOX_INITIAL_STATE,
25
26
  ResourceType.DM_INBOX_TIMELINE,
27
+ ResourceType.SPACE_DETAILS,
26
28
  ResourceType.TWEET_DETAILS,
27
29
  ResourceType.TWEET_DETAILS_ALT,
28
30
  ResourceType.TWEET_DETAILS_BULK,
@@ -35,6 +37,7 @@ export const FetchResourcesGroup = [
35
37
  ResourceType.USER_BOOKMARKS,
36
38
  ResourceType.USER_BOOKMARK_FOLDERS,
37
39
  ResourceType.USER_BOOKMARK_FOLDER_TWEETS,
40
+ ResourceType.USER_ABOUT_BY_USERNAME,
38
41
  ResourceType.USER_DETAILS_BY_USERNAME,
39
42
  ResourceType.USER_DETAILS_BY_ID,
40
43
  ResourceType.USER_DETAILS_BY_IDS_BULK,
@@ -4,6 +4,7 @@ import { ResourceType } from '../enums/Resource';
4
4
  import { DMRequests } from '../requests/DirectMessage';
5
5
  import { ListRequests } from '../requests/List';
6
6
  import { MediaRequests } from '../requests/Media';
7
+ import { SpaceRequests } from '../requests/Space';
7
8
  import { TweetRequests } from '../requests/Tweet';
8
9
  import { UserRequests } from '../requests/User';
9
10
  import { IFetchArgs } from '../types/args/FetchArgs';
@@ -34,6 +35,9 @@ export const Requests: { [key in keyof typeof ResourceType]: (args: IFetchArgs |
34
35
  DM_INBOX_TIMELINE: (args: IFetchArgs) => DMRequests.inboxTimeline(args.maxId),
35
36
  DM_DELETE_CONVERSATION: (args: IPostArgs) => DMRequests.deleteConversation(args.conversationId!),
36
37
 
38
+ SPACE_DETAILS: (args: IFetchArgs) =>
39
+ SpaceRequests.details(args.id!, args.withReplays, args.withListeners, args.isMetatagsQuery),
40
+
37
41
  TWEET_BOOKMARK: (args: IPostArgs) => TweetRequests.bookmark(args.id!),
38
42
  TWEET_DETAILS: (args: IFetchArgs) => TweetRequests.details(args.id!),
39
43
  TWEET_DETAILS_ALT: (args: IFetchArgs) => TweetRequests.replies(args.id!),
@@ -66,6 +70,7 @@ export const Requests: { [key in keyof typeof ResourceType]: (args: IFetchArgs |
66
70
  USER_BOOKMARK_FOLDERS: (args: IFetchArgs) => UserRequests.bookmarkFolders(args.cursor),
67
71
  USER_BOOKMARK_FOLDER_TWEETS: (args: IFetchArgs) =>
68
72
  UserRequests.bookmarkFolderTweets(args.id!, args.count, args.cursor),
73
+ USER_ABOUT_BY_USERNAME: (args: IFetchArgs) => UserRequests.aboutByUsername(args.id!),
69
74
  USER_DETAILS_BY_USERNAME: (args: IFetchArgs) => UserRequests.detailsByUsername(args.id!),
70
75
  USER_DETAILS_BY_ID: (args: IFetchArgs) => UserRequests.detailsById(args.id!),
71
76
  USER_DETAILS_BY_IDS_BULK: (args: IFetchArgs) => UserRequests.bulkDetailsByIds(args.ids!),
@@ -0,0 +1,46 @@
1
+ import { Command, createCommand } from 'commander';
2
+
3
+ import { output } from '../helper/CliUtils';
4
+ import { Rettiwt } from '../Rettiwt';
5
+
6
+ interface ISpaceDetailsOptions {
7
+ withReplays?: boolean;
8
+ withListeners?: boolean;
9
+ metatags?: boolean;
10
+ }
11
+
12
+ /**
13
+ * Creates a new 'space' command which uses the given Rettiwt instance.
14
+ *
15
+ * @param rettiwt - The Rettiwt instance to use.
16
+ * @returns The created 'space' command.
17
+ */
18
+ function createSpaceCommand(rettiwt: Rettiwt): Command {
19
+ // Creating the 'space' command
20
+ const space = createCommand('space').description('Access resources related to spaces');
21
+
22
+ // Details
23
+ space
24
+ .command('details')
25
+ .description('Fetch the details of a space with the given id')
26
+ .argument('<id>', 'The id of the space')
27
+ .option('--with-replays', 'Include replay information')
28
+ .option('--with-listeners', 'Include listeners information')
29
+ .option('--metatags', 'Request metatags in the response')
30
+ .action(async (id: string, options?: ISpaceDetailsOptions) => {
31
+ try {
32
+ const details = await rettiwt.space.details(id, {
33
+ withReplays: options?.withReplays,
34
+ withListeners: options?.withListeners,
35
+ isMetatagsQuery: options?.metatags,
36
+ });
37
+ output(details);
38
+ } catch (error) {
39
+ output(error);
40
+ }
41
+ });
42
+
43
+ return space;
44
+ }
45
+
46
+ export default createSpaceCommand;
@@ -110,6 +110,19 @@ function createUserCommand(rettiwt: Rettiwt): Command {
110
110
  }
111
111
  });
112
112
 
113
+ // About
114
+ user.command('about')
115
+ .description('Fetch the about profile of the user with the given username')
116
+ .argument('<username>', 'The username of the user')
117
+ .action(async (username: string) => {
118
+ try {
119
+ const about = await rettiwt.user.about(username);
120
+ output(about);
121
+ } catch (error) {
122
+ output(error);
123
+ }
124
+ });
125
+
113
126
  // Details
114
127
  user.command('details')
115
128
  .description('Fetch the details of the user with the given id/username')
@@ -22,6 +22,9 @@ export enum ResourceType {
22
22
  DM_INBOX_TIMELINE = 'DM_INBOX_TIMELINE',
23
23
  DM_DELETE_CONVERSATION = 'DM_DELETE_CONVERSATION',
24
24
 
25
+ // SPACE
26
+ SPACE_DETAILS = 'SPACE_DETAILS',
27
+
25
28
  // TWEET
26
29
  TWEET_BOOKMARK = 'TWEET_BOOKMARK',
27
30
  TWEET_DETAILS = 'TWEET_DETAILS',
@@ -47,6 +50,7 @@ export enum ResourceType {
47
50
  USER_BOOKMARKS = 'USER_BOOKMARKS',
48
51
  USER_BOOKMARK_FOLDERS = 'USER_BOOKMARK_FOLDERS',
49
52
  USER_BOOKMARK_FOLDER_TWEETS = 'USER_BOOKMARK_FOLDER_TWEETS',
53
+ USER_ABOUT_BY_USERNAME = 'USER_ABOUT_BY_USERNAME',
50
54
  USER_DETAILS_BY_USERNAME = 'USER_DETAILS_BY_USERNAME',
51
55
  USER_DETAILS_BY_ID = 'USER_DETAILS_BY_ID',
52
56
  USER_DETAILS_BY_IDS_BULK = 'USER_DETAILS_BY_IDS_BULK',
package/src/index.ts CHANGED
@@ -26,14 +26,17 @@ export * from './models/data/DirectMessage';
26
26
  export * from './models/data/Inbox';
27
27
  export * from './models/data/List';
28
28
  export * from './models/data/Notification';
29
+ export * from './models/data/Space';
29
30
  export * from './models/data/Tweet';
30
31
  export * from './models/data/User';
32
+ export * from './models/data/UserAbout';
31
33
  export * from './models/errors/TwitterError';
32
34
 
33
35
  // REQUESTS
34
36
  export * from './requests/DirectMessage';
35
37
  export * from './requests/List';
36
38
  export * from './requests/Media';
39
+ export * from './requests/Space';
37
40
  export * from './requests/Tweet';
38
41
  export * from './requests/User';
39
42
 
@@ -41,6 +44,7 @@ export * from './requests/User';
41
44
  export * from './services/public/DirectMessageService';
42
45
  export * from './services/public/FetcherService';
43
46
  export * from './services/public/ListService';
47
+ export * from './services/public/SpaceService';
44
48
  export * from './services/public/TweetService';
45
49
  export * from './services/public/UserService';
46
50
 
@@ -55,8 +59,10 @@ export * from './types/data/DirectMessage';
55
59
  export * from './types/data/Inbox';
56
60
  export * from './types/data/List';
57
61
  export * from './types/data/Notification';
62
+ export * from './types/data/Space';
58
63
  export * from './types/data/Tweet';
59
64
  export * from './types/data/User';
65
+ export * from './types/data/UserAbout';
60
66
  export * from './types/errors/TwitterError';
61
67
  export * from './types/params/Variables';
62
68
  export { IAnalytics as IRawAnalytics } from './types/raw/base/Analytic';
@@ -68,7 +74,7 @@ export { IList as IRawList } from './types/raw/base/List';
68
74
  export { IMedia as IRawMedia } from './types/raw/base/Media';
69
75
  export { IMessage as IRawMessage } from './types/raw/base/Message';
70
76
  export { INotification as IRawNotification } from './types/raw/base/Notification';
71
- export { ISpace as IRawSpace } from './types/raw/base/Space';
77
+ export { IRawSpace } from './types/raw/base/Space';
72
78
  export { ITweet as IRawTweet } from './types/raw/base/Tweet';
73
79
  export { IUser as IRawUser } from './types/raw/base/User';
74
80
  export { IDataResult as IRawDataResult } from './types/raw/composite/DataResult';
@@ -83,6 +89,7 @@ export { IListTweetsResponse as IRawListTweetsResponse } from './types/raw/list/
83
89
  export { IMediaFinalizeUploadResponse as IRawMediaFinalizeUploadResponse } from './types/raw/media/FinalizeUpload';
84
90
  export { IMediaInitializeUploadResponse as IRawMediaInitializeUploadResponse } from './types/raw/media/InitalizeUpload';
85
91
  export { IMediaLiveVideoStreamResponse as IRawMediaLiveVideoStreamResponse } from './types/raw/media/LiveVideoStream';
92
+ export { IAudioSpaceByIdResponse as IRawSpaceDetailsResponse } from './types/raw/space/AudioSpaceById';
86
93
  export { ITweetDetailsResponse as IRawTweetDetailsResponse } from './types/raw/tweet/Details';
87
94
  export { ITweetDetailsBulkResponse as IRawTweetDetailsBulkResponse } from './types/raw/tweet/DetailsBulk';
88
95
  export { ITweetLikeResponse as IRawTweetLikeResponse } from './types/raw/tweet/Like';
@@ -97,6 +104,7 @@ export { ITweetUnlikeResponse as IRawTweetUnlikeResponse } from './types/raw/twe
97
104
  export { ITweetUnpostResponse as IRawTweetUnpostResponse } from './types/raw/tweet/Unpost';
98
105
  export { ITweetUnretweetResponse as IRawTweetUnretweetResponse } from './types/raw/tweet/Unretweet';
99
106
  export { ITweetUnscheduleResponse as ITRawTweetUnscheduleResponse } from './types/raw/tweet/Unschedule';
107
+ export { IUserAboutResponse as IRawUserAboutResponse } from './types/raw/user/About';
100
108
  export { IUserAffiliatesResponse as IRawUserAffiliatesResponse } from './types/raw/user/Affiliates';
101
109
  export { IUserAnalyticsResponse as IRawUserAnalyticsResponse } from './types/raw/user/Analytics';
102
110
  export { IUserBookmarkFoldersResponse as IRawUserBookmarkFoldersResponse } from './types/raw/user/BookmarkFolders';
@@ -17,11 +17,14 @@ export class FetchArgs implements IFetchArgs {
17
17
  public granularity?: RawAnalyticsGranularity;
18
18
  public id?: string;
19
19
  public ids?: string[];
20
+ public isMetatagsQuery?: boolean;
20
21
  public maxId?: string;
21
22
  public metrics?: RawAnalyticsMetric[];
22
23
  public showVerifiedFollowers?: boolean;
23
24
  public sortBy?: TweetRepliesSortType;
24
25
  public toTime?: Date;
26
+ public withListeners?: boolean;
27
+ public withReplays?: boolean;
25
28
 
26
29
  /**
27
30
  * @param args - Additional user-defined arguments for fetching the resource.
@@ -29,6 +32,7 @@ export class FetchArgs implements IFetchArgs {
29
32
  public constructor(args: IFetchArgs) {
30
33
  this.id = args.id;
31
34
  this.ids = args.ids;
35
+ this.isMetatagsQuery = args.isMetatagsQuery;
32
36
  this.count = args.count;
33
37
  this.cursor = args.cursor;
34
38
  this.filter = args.filter ? new TweetFilter(args.filter) : undefined;
@@ -41,6 +45,8 @@ export class FetchArgs implements IFetchArgs {
41
45
  this.activeConversationId = args.activeConversationId;
42
46
  this.conversationId = args.conversationId;
43
47
  this.maxId = args.maxId;
48
+ this.withListeners = args.withListeners;
49
+ this.withReplays = args.withReplays;
44
50
  }
45
51
  }
46
52
 
@@ -0,0 +1,201 @@
1
+ import { LogActions } from '../../enums/Logging';
2
+ import { LogService } from '../../services/internal/LogService';
3
+ import { ISpace, ISpaceParticipant, ISpaceParticipants } from '../../types/data/Space';
4
+ import {
5
+ IAudioSpace,
6
+ IAudioSpaceByIdResponse,
7
+ IAudioSpaceParticipant,
8
+ IAudioSpaceParticipants,
9
+ } from '../../types/raw/space/AudioSpaceById';
10
+
11
+ /**
12
+ * The details of a single Space.
13
+ *
14
+ * @public
15
+ */
16
+ export class Space implements ISpace {
17
+ /** The raw space details. */
18
+ private readonly _raw: IAudioSpace;
19
+
20
+ public conversationControls?: number;
21
+ public createdAt?: string;
22
+ public creatorId?: string;
23
+ public disallowJoin?: boolean;
24
+ public endedAt?: string;
25
+ public id: string;
26
+ public isEmployeeOnly?: boolean;
27
+ public isLocked?: boolean;
28
+ public isMuted?: boolean;
29
+ public isSpaceAvailableForClipping?: boolean;
30
+ public isSpaceAvailableForReplay?: boolean;
31
+ public isSubscribed?: boolean;
32
+ public mediaKey?: string;
33
+ public noIncognito?: boolean;
34
+ public participantCount?: number;
35
+ public participants?: ISpaceParticipants;
36
+ public scheduledStart?: string;
37
+ public startedAt?: string;
38
+ public state?: string;
39
+ public title?: string;
40
+ public totalLiveListeners?: number;
41
+ public totalReplayWatched?: number;
42
+ public updatedAt?: string;
43
+
44
+ /**
45
+ * @param space - The raw space details.
46
+ */
47
+ public constructor(space: IAudioSpace) {
48
+ this._raw = { ...space };
49
+
50
+ const metadata = space.metadata;
51
+
52
+ this.id = metadata?.rest_id ?? '';
53
+ this.state = metadata?.state;
54
+ this.title = metadata?.title;
55
+ this.mediaKey = metadata?.media_key;
56
+ this.createdAt = Space._timestampToIso(metadata?.created_at);
57
+ this.scheduledStart = Space._timestampToIso(metadata?.scheduled_start);
58
+ this.startedAt = Space._timestampToIso(metadata?.started_at);
59
+ this.endedAt = Space._timestampToIso(metadata?.ended_at);
60
+ this.updatedAt = Space._timestampToIso(metadata?.updated_at);
61
+ this.creatorId = metadata?.creator_results?.result?.rest_id ?? metadata?.creator_id;
62
+ this.conversationControls = metadata?.conversation_controls;
63
+ this.disallowJoin = metadata?.disallow_join;
64
+ this.isEmployeeOnly = metadata?.is_employee_only;
65
+ this.isLocked = metadata?.is_locked;
66
+ this.isMuted = metadata?.is_muted;
67
+ this.isSpaceAvailableForClipping = metadata?.is_space_available_for_clipping;
68
+ this.isSpaceAvailableForReplay = metadata?.is_space_available_for_replay;
69
+ this.noIncognito = metadata?.no_incognito;
70
+ this.totalLiveListeners = metadata?.total_live_listeners;
71
+ this.totalReplayWatched = metadata?.total_replay_watched;
72
+ this.participantCount = space.participants?.total ?? metadata?.participant_count;
73
+ this.isSubscribed = space.is_subscribed;
74
+ this.participants = Space._mapParticipants(space.participants);
75
+ }
76
+
77
+ /** The raw space details. */
78
+ public get raw(): IAudioSpace {
79
+ return { ...this._raw };
80
+ }
81
+
82
+ /**
83
+ * Maps a raw participant to a deserialized participant.
84
+ *
85
+ * @param participant - The raw participant data.
86
+ */
87
+ private static _mapParticipant(participant: IAudioSpaceParticipant): ISpaceParticipant {
88
+ const userId = participant.user_results?.rest_id ?? participant.user_results?.result?.rest_id;
89
+
90
+ return {
91
+ id: userId,
92
+ screenName: participant.twitter_screen_name,
93
+ displayName: participant.display_name,
94
+ avatarUrl: participant.avatar_url,
95
+ isVerified: participant.is_verified,
96
+ isMutedByAdmin: participant.is_muted_by_admin,
97
+ isMutedByGuest: participant.is_muted_by_guest,
98
+ };
99
+ }
100
+
101
+ /**
102
+ * Maps raw participants to deserialized participants.
103
+ *
104
+ * @param participants - The raw participants data.
105
+ */
106
+ private static _mapParticipants(participants?: IAudioSpaceParticipants): ISpaceParticipants | undefined {
107
+ if (!participants) {
108
+ return undefined;
109
+ }
110
+
111
+ return {
112
+ total: participants.total,
113
+ admins: (participants.admins ?? []).map((participant) => Space._mapParticipant(participant)),
114
+ speakers: (participants.speakers ?? []).map((participant) => Space._mapParticipant(participant)),
115
+ listeners: (participants.listeners ?? []).map((participant) => Space._mapParticipant(participant)),
116
+ };
117
+ }
118
+
119
+ /**
120
+ * Convert timestamp to ISO string.
121
+ *
122
+ * @param value - The timestamp value.
123
+ */
124
+ private static _timestampToIso(value?: number | string): string | undefined {
125
+ if (value == undefined) {
126
+ return undefined;
127
+ }
128
+
129
+ const numeric = typeof value === 'string' ? Number(value) : value;
130
+
131
+ if (!Number.isNaN(numeric)) {
132
+ return new Date(numeric).toISOString();
133
+ }
134
+
135
+ const parsed = new Date(value);
136
+
137
+ if (!Number.isNaN(parsed.getTime())) {
138
+ return parsed.toISOString();
139
+ }
140
+
141
+ return undefined;
142
+ }
143
+
144
+ /**
145
+ * Extracts and deserializes a single target space from the given raw response data.
146
+ *
147
+ * @param response - The raw response data.
148
+ *
149
+ * @returns The target deserialized space.
150
+ */
151
+ public static single(response: IAudioSpaceByIdResponse): Space | undefined {
152
+ const audioSpace = response.data?.audioSpace;
153
+ const spaceId = audioSpace?.metadata?.rest_id;
154
+
155
+ if (audioSpace && spaceId) {
156
+ // Logging
157
+ LogService.log(LogActions.DESERIALIZE, { id: spaceId });
158
+
159
+ return new Space(audioSpace);
160
+ }
161
+
162
+ // Logging
163
+ LogService.log(LogActions.WARNING, {
164
+ action: LogActions.DESERIALIZE,
165
+ message: 'Space not found, skipping',
166
+ });
167
+
168
+ return undefined;
169
+ }
170
+
171
+ /**
172
+ * @returns A serializable JSON representation of `this` object.
173
+ */
174
+ public toJSON(): ISpace {
175
+ return {
176
+ id: this.id,
177
+ state: this.state,
178
+ title: this.title,
179
+ mediaKey: this.mediaKey,
180
+ createdAt: this.createdAt,
181
+ scheduledStart: this.scheduledStart,
182
+ startedAt: this.startedAt,
183
+ endedAt: this.endedAt,
184
+ updatedAt: this.updatedAt,
185
+ creatorId: this.creatorId,
186
+ conversationControls: this.conversationControls,
187
+ disallowJoin: this.disallowJoin,
188
+ isEmployeeOnly: this.isEmployeeOnly,
189
+ isLocked: this.isLocked,
190
+ isMuted: this.isMuted,
191
+ isSpaceAvailableForClipping: this.isSpaceAvailableForClipping,
192
+ isSpaceAvailableForReplay: this.isSpaceAvailableForReplay,
193
+ noIncognito: this.noIncognito,
194
+ totalLiveListeners: this.totalLiveListeners,
195
+ totalReplayWatched: this.totalReplayWatched,
196
+ participantCount: this.participantCount,
197
+ isSubscribed: this.isSubscribed,
198
+ participants: this.participants,
199
+ };
200
+ }
201
+ }
@@ -0,0 +1,161 @@
1
+ import { LogActions } from '../../enums/Logging';
2
+ import { LogService } from '../../services/internal/LogService';
3
+ import {
4
+ IUserAbout,
5
+ IUserAboutProfile,
6
+ IUserAboutUsernameChanges,
7
+ IUserAboutVerificationInfo,
8
+ } from '../../types/data/UserAbout';
9
+ import { IUserAboutResponse, IUserAboutResult } from '../../types/raw/user/About';
10
+
11
+ /* eslint-disable @typescript-eslint/naming-convention */
12
+ type IRawUsernameChanges = {
13
+ count?: string;
14
+ last_changed_at_msec?: string;
15
+ };
16
+ /* eslint-enable @typescript-eslint/naming-convention */
17
+
18
+ /**
19
+ * The about profile details of a single user.
20
+ *
21
+ * @public
22
+ */
23
+ export class UserAbout implements IUserAbout {
24
+ /** The raw about profile details. */
25
+ private readonly _raw: IUserAboutResult;
26
+
27
+ public aboutProfile?: IUserAboutProfile;
28
+ public createdAt: string;
29
+ public fullName: string;
30
+ public id: string;
31
+ public isProtected?: boolean;
32
+ public isVerified: boolean;
33
+ public profileImage: string;
34
+ public profileImageShape?: string;
35
+ public userName: string;
36
+ public verificationInfo?: IUserAboutVerificationInfo;
37
+
38
+ /**
39
+ * @param user - The raw about profile details.
40
+ */
41
+ public constructor(user: IUserAboutResult) {
42
+ this._raw = { ...user };
43
+
44
+ this.id = user.rest_id ?? user.id ?? '';
45
+ this.userName = user.core?.screen_name ?? '';
46
+ this.fullName = user.core?.name ?? '';
47
+ this.createdAt = new Date(user.core?.created_at ?? 0).toISOString();
48
+ this.profileImage = user.avatar?.image_url ?? '';
49
+ this.profileImageShape = user.profile_image_shape;
50
+ this.isVerified = user.is_blue_verified ?? false;
51
+ this.isProtected = user.privacy?.protected;
52
+ this.aboutProfile = UserAbout._buildAboutProfile(user);
53
+ this.verificationInfo = UserAbout._buildVerificationInfo(user);
54
+ }
55
+
56
+ /** The raw about profile details. */
57
+ public get raw(): IUserAboutResult {
58
+ return { ...this._raw };
59
+ }
60
+
61
+ private static _buildAboutProfile(user: IUserAboutResult): IUserAboutProfile | undefined {
62
+ const profile = user.about_profile;
63
+
64
+ if (!profile) {
65
+ return undefined;
66
+ }
67
+
68
+ const usernameChanges = UserAbout._buildUsernameChanges(profile.username_changes);
69
+
70
+ return {
71
+ createdCountryAccurate: profile.created_country_accurate,
72
+ accountBasedIn: profile.account_based_in,
73
+ locationAccurate: profile.location_accurate,
74
+ learnMoreUrl: profile.learn_more_url,
75
+ source: profile.source,
76
+ usernameChanges: usernameChanges,
77
+ };
78
+ }
79
+
80
+ private static _buildUsernameChanges(changes?: IRawUsernameChanges): IUserAboutUsernameChanges | undefined {
81
+ if (!changes) {
82
+ return undefined;
83
+ }
84
+
85
+ return {
86
+ count: UserAbout._toNumber(changes.count),
87
+ lastChangedAt: UserAbout._toIsoFromMsec(changes.last_changed_at_msec),
88
+ };
89
+ }
90
+
91
+ private static _buildVerificationInfo(user: IUserAboutResult): IUserAboutVerificationInfo | undefined {
92
+ const info = user.verification_info;
93
+
94
+ if (!info) {
95
+ return undefined;
96
+ }
97
+
98
+ return {
99
+ isIdentityVerified: info.is_identity_verified,
100
+ verifiedSince: UserAbout._toIsoFromMsec(info.reason?.verified_since_msec),
101
+ };
102
+ }
103
+
104
+ private static _toIsoFromMsec(value?: string | number): string | undefined {
105
+ const parsed = UserAbout._toNumber(value);
106
+
107
+ return parsed === undefined ? undefined : new Date(parsed).toISOString();
108
+ }
109
+
110
+ private static _toNumber(value?: string | number): number | undefined {
111
+ if (value === undefined || value === null) {
112
+ return undefined;
113
+ }
114
+
115
+ const parsed = typeof value === 'number' ? value : Number(value);
116
+
117
+ return Number.isFinite(parsed) ? parsed : undefined;
118
+ }
119
+
120
+ /**
121
+ * Extracts and deserializes a single target user about profile from the given raw response data.
122
+ *
123
+ * @param response - The raw response data.
124
+ *
125
+ * @returns The target deserialized user about profile.
126
+ */
127
+ public static single(response: NonNullable<unknown>): UserAbout | undefined {
128
+ const result = (response as IUserAboutResponse)?.data?.user_result_by_screen_name?.result;
129
+
130
+ if (!result || result.__typename !== 'User') {
131
+ LogService.log(LogActions.WARNING, {
132
+ action: LogActions.DESERIALIZE,
133
+ message: `User not found, skipping`,
134
+ });
135
+ return undefined;
136
+ }
137
+
138
+ // Logging
139
+ LogService.log(LogActions.DESERIALIZE, { id: result.rest_id ?? result.id });
140
+
141
+ return new UserAbout(result);
142
+ }
143
+
144
+ /**
145
+ * @returns A serializable JSON representation of `this` object.
146
+ */
147
+ public toJSON(): IUserAbout {
148
+ return {
149
+ id: this.id,
150
+ userName: this.userName,
151
+ fullName: this.fullName,
152
+ createdAt: this.createdAt,
153
+ profileImage: this.profileImage,
154
+ profileImageShape: this.profileImageShape,
155
+ isVerified: this.isVerified,
156
+ isProtected: this.isProtected,
157
+ aboutProfile: this.aboutProfile,
158
+ verificationInfo: this.verificationInfo,
159
+ };
160
+ }
161
+ }
@@ -67,7 +67,7 @@ export class ListRequests {
67
67
  public static members(id: string, count?: number, cursor?: string): AxiosRequestConfig {
68
68
  return {
69
69
  method: 'get',
70
- url: 'https://x.com/i/api/graphql/Bnhcen0kdsMAU1tW7U79qQ/ListMembers',
70
+ url: 'https://x.com/i/api/graphql/7FPk01hdc1jyzL6Gj8vMZw/ListMembers',
71
71
  params: {
72
72
  /* eslint-disable @typescript-eslint/naming-convention */
73
73
  variables: JSON.stringify({
@@ -153,7 +153,7 @@ export class ListRequests {
153
153
  public static tweets(id: string, count?: number, cursor?: string): AxiosRequestConfig {
154
154
  return {
155
155
  method: 'get',
156
- url: 'https://x.com/i/api/graphql/fqNUs_6rqLf89u_2waWuqg/ListLatestTweetsTimeline',
156
+ url: 'https://x.com/i/api/graphql/aJxgBm1YveGJCRiWJFx5WA/ListLatestTweetsTimeline',
157
157
  params: {
158
158
  /* eslint-disable @typescript-eslint/naming-convention */
159
159
  variables: JSON.stringify({
@@ -0,0 +1,76 @@
1
+ import { AxiosRequestConfig } from 'axios';
2
+
3
+ /**
4
+ * Collection of requests related to spaces.
5
+ *
6
+ * @public
7
+ */
8
+ export class SpaceRequests {
9
+ /**
10
+ * @param id - The id of the space whose details are to be fetched.
11
+ * @param withReplays - Whether to include replay information.
12
+ * @param withListeners - Whether to include listeners information.
13
+ * @param isMetatagsQuery - Whether the request is a metatags query.
14
+ */
15
+ public static details(
16
+ id: string,
17
+ withReplays?: boolean,
18
+ withListeners?: boolean,
19
+ isMetatagsQuery?: boolean,
20
+ ): AxiosRequestConfig {
21
+ return {
22
+ method: 'get',
23
+ url: 'https://x.com/i/api/graphql/rR7CQrr8kxb6fatlUaB61Q/AudioSpaceById',
24
+ params: {
25
+ /* eslint-disable @typescript-eslint/naming-convention */
26
+ variables: JSON.stringify({
27
+ id: id,
28
+ isMetatagsQuery: isMetatagsQuery ?? false,
29
+ withReplays: withReplays ?? true,
30
+ withListeners: withListeners ?? false,
31
+ }),
32
+ features: JSON.stringify({
33
+ spaces_2022_h2_spaces_communities: true,
34
+ spaces_2022_h2_clipping: true,
35
+ creator_subscriptions_tweet_preview_api_enabled: true,
36
+ profile_label_improvements_pcf_label_in_post_enabled: true,
37
+ responsive_web_profile_redirect_enabled: false,
38
+ rweb_tipjar_consumption_enabled: false,
39
+ verified_phone_label_enabled: false,
40
+ premium_content_api_read_enabled: false,
41
+ communities_web_enable_tweet_community_results_fetch: true,
42
+ c9s_tweet_anatomy_moderator_badge_enabled: true,
43
+ responsive_web_grok_analyze_button_fetch_trends_enabled: false,
44
+ responsive_web_grok_analyze_post_followups_enabled: true,
45
+ responsive_web_jetfuel_frame: true,
46
+ responsive_web_grok_share_attachment_enabled: true,
47
+ responsive_web_grok_annotations_enabled: false,
48
+ articles_preview_enabled: true,
49
+ responsive_web_graphql_skip_user_profile_image_extensions_enabled: false,
50
+ responsive_web_edit_tweet_api_enabled: true,
51
+ graphql_is_translatable_rweb_tweet_is_translatable_enabled: true,
52
+ view_counts_everywhere_api_enabled: true,
53
+ longform_notetweets_consumption_enabled: true,
54
+ responsive_web_twitter_article_tweet_consumption_enabled: true,
55
+ tweet_awards_web_tipping_enabled: false,
56
+ responsive_web_grok_show_grok_translated_post: false,
57
+ responsive_web_grok_analysis_button_from_backend: true,
58
+ post_ctas_fetch_enabled: true,
59
+ creator_subscriptions_quote_tweet_preview_enabled: false,
60
+ freedom_of_speech_not_reach_fetch_enabled: true,
61
+ standardized_nudges_misinfo: true,
62
+ tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled: true,
63
+ longform_notetweets_rich_text_read_enabled: true,
64
+ longform_notetweets_inline_media_enabled: true,
65
+ responsive_web_grok_image_annotation_enabled: true,
66
+ responsive_web_grok_imagine_annotation_enabled: true,
67
+ responsive_web_graphql_timeline_navigation_enabled: true,
68
+ responsive_web_grok_community_note_auto_translation_is_enabled: false,
69
+ responsive_web_enhance_cards_enabled: false,
70
+ }),
71
+ /* eslint-enable @typescript-eslint/naming-convention */
72
+ },
73
+ paramsSerializer: { encode: encodeURIComponent },
74
+ };
75
+ }
76
+ }