rettiwt-api 1.1.7 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (456) hide show
  1. package/.github/workflows/build-docs.yml +22 -21
  2. package/.github/workflows/publish-to-npm.yml +29 -0
  3. package/README.md +52 -40
  4. package/dist/config/env.d.ts +5 -5
  5. package/dist/config/env.js +8 -8
  6. package/dist/enums/Errors.d.ts +20 -20
  7. package/dist/enums/Errors.js +27 -27
  8. package/dist/enums/HTTP.d.ts +17 -17
  9. package/dist/enums/HTTP.js +22 -22
  10. package/dist/graphql/enums/Errors.d.ts +21 -21
  11. package/dist/graphql/enums/Errors.js +28 -28
  12. package/dist/graphql/queries/RootQuery.d.ts +4 -4
  13. package/dist/graphql/queries/RootQuery.js +77 -77
  14. package/dist/graphql/resolvers/AccountResolver.d.ts +12 -12
  15. package/dist/graphql/resolvers/AccountResolver.js +83 -83
  16. package/dist/graphql/resolvers/ResolverBase.d.ts +16 -16
  17. package/dist/graphql/resolvers/ResolverBase.js +22 -22
  18. package/dist/graphql/resolvers/TweetResolver.d.ts +46 -46
  19. package/dist/graphql/resolvers/TweetResolver.js +311 -311
  20. package/dist/graphql/resolvers/UserResolver.d.ts +48 -48
  21. package/dist/graphql/resolvers/UserResolver.js +333 -333
  22. package/dist/graphql/resolvers/UserResolver.js.map +1 -1
  23. package/dist/graphql/types/Global.d.ts +4 -4
  24. package/dist/graphql/types/Global.js +12 -12
  25. package/dist/graphql/types/TweetTypes.d.ts +4 -4
  26. package/dist/graphql/types/TweetTypes.js +159 -159
  27. package/dist/graphql/types/UserTypes.d.ts +3 -3
  28. package/dist/graphql/types/UserTypes.js +136 -136
  29. package/dist/graphql/types/UserTypes.js.map +1 -1
  30. package/dist/index.d.ts +43 -43
  31. package/dist/index.js +70 -70
  32. package/dist/models/args/TweetFilter.d.ts +65 -59
  33. package/dist/models/args/TweetFilter.js +120 -100
  34. package/dist/models/args/TweetFilter.js.map +1 -1
  35. package/dist/models/args/TweetListArgs.d.ts +21 -21
  36. package/dist/models/args/TweetListArgs.js +53 -53
  37. package/dist/models/args/UserListArgs.d.ts +21 -21
  38. package/dist/models/args/UserListArgs.js +53 -53
  39. package/dist/models/auth/AuthCookie.d.ts +21 -21
  40. package/dist/models/auth/AuthCookie.js +32 -32
  41. package/dist/models/data/CursoredData.d.ts +34 -34
  42. package/dist/models/data/CursoredData.js +41 -41
  43. package/dist/models/data/Tweet.d.ts +53 -53
  44. package/dist/models/data/Tweet.js +103 -103
  45. package/dist/models/data/User.d.ts +41 -41
  46. package/dist/models/data/User.js +31 -31
  47. package/dist/models/errors/DataValidationError.d.ts +20 -20
  48. package/dist/models/errors/DataValidationError.js +22 -22
  49. package/dist/server.d.ts +1 -1
  50. package/dist/server.js +75 -75
  51. package/dist/services/auth/AccountService.d.ts +83 -88
  52. package/dist/services/auth/AccountService.js +411 -391
  53. package/dist/services/auth/AccountService.js.map +1 -1
  54. package/dist/services/auth/AuthService.d.ts +31 -31
  55. package/dist/services/auth/AuthService.js +117 -117
  56. package/dist/services/data/TweetService.d.ts +60 -74
  57. package/dist/services/data/TweetService.js +251 -254
  58. package/dist/services/data/TweetService.js.map +1 -1
  59. package/dist/services/data/UserService.d.ts +71 -87
  60. package/dist/services/data/UserService.js +287 -296
  61. package/dist/services/data/UserService.js.map +1 -1
  62. package/dist/services/helper/Headers.d.ts +19 -19
  63. package/dist/services/helper/Headers.js +61 -61
  64. package/dist/services/helper/Parser.d.ts +22 -28
  65. package/dist/services/helper/Parser.js +83 -104
  66. package/dist/services/helper/Parser.js.map +1 -1
  67. package/dist/services/helper/extractors/Tweets.d.ts +32 -32
  68. package/dist/services/helper/extractors/Tweets.js +263 -263
  69. package/dist/services/helper/extractors/Users.d.ts +26 -26
  70. package/dist/services/helper/extractors/Users.js +202 -202
  71. package/dist/services/helper/payloads/LoginFlows.d.ts +77 -77
  72. package/dist/services/helper/payloads/LoginFlows.js +91 -91
  73. package/dist/services/helper/urls/Authentication.d.ts +4 -4
  74. package/dist/services/helper/urls/Authentication.js +10 -10
  75. package/dist/services/util/CacheService.d.ts +33 -33
  76. package/dist/services/util/CacheService.js +95 -95
  77. package/dist/services/util/FetcherService.d.ts +65 -65
  78. package/dist/services/util/FetcherService.js +213 -213
  79. package/dist/twitter/Url.d.ts +22 -0
  80. package/dist/twitter/Url.js +32 -0
  81. package/dist/twitter/Url.js.map +1 -0
  82. package/dist/twitter/enums/Resources.d.ts +15 -0
  83. package/dist/twitter/enums/Resources.js +21 -0
  84. package/dist/twitter/enums/Resources.js.map +1 -0
  85. package/dist/twitter/params/Query.d.ts +67 -0
  86. package/dist/twitter/params/Query.js +64 -0
  87. package/dist/twitter/params/Query.js.map +1 -0
  88. package/dist/twitter/payloads/Args.d.ts +16 -0
  89. package/dist/twitter/payloads/Args.js +16 -0
  90. package/dist/twitter/payloads/Args.js.map +1 -0
  91. package/dist/{types/raw/query/tweet/Engagements.d.ts → twitter/payloads/Features.d.ts} +28 -29
  92. package/dist/twitter/payloads/Features.js +37 -0
  93. package/dist/twitter/payloads/Features.js.map +1 -0
  94. package/dist/twitter/payloads/Variables.d.ts +41 -0
  95. package/dist/twitter/payloads/Variables.js +64 -0
  96. package/dist/twitter/payloads/Variables.js.map +1 -0
  97. package/dist/{types → twitter/types/request}/Query.d.ts +86 -80
  98. package/dist/{types/data/Tweet.js → twitter/types/request/Query.js} +4 -4
  99. package/dist/twitter/types/request/Query.js.map +1 -0
  100. package/dist/{types/raw/data → twitter/types}/tweet/Favouriters.d.ts +164 -164
  101. package/dist/twitter/types/tweet/Favouriters.js +3 -0
  102. package/dist/twitter/types/tweet/Favouriters.js.map +1 -0
  103. package/dist/{types/raw → twitter/types}/tweet/Retweeters.d.ts +171 -171
  104. package/dist/{types/Trends.js → twitter/types/tweet/Retweeters.js} +3 -3
  105. package/dist/twitter/types/tweet/Retweeters.js.map +1 -0
  106. package/dist/{types/raw/data → twitter/types}/tweet/Tweet.d.ts +746 -746
  107. package/dist/{types/data/User.js → twitter/types/tweet/Tweet.js} +3 -3
  108. package/dist/twitter/types/tweet/Tweet.js.map +1 -0
  109. package/dist/{types/raw → twitter/types}/tweet/Tweets.d.ts +386 -386
  110. package/dist/{types/raw/user/User.js → twitter/types/tweet/Tweets.js} +3 -3
  111. package/dist/twitter/types/tweet/Tweets.js.map +1 -0
  112. package/dist/{types/raw → twitter/types}/user/Followers.d.ts +176 -176
  113. package/dist/{types/interfaces/Rettiwt.js → twitter/types/user/Followers.js} +3 -3
  114. package/dist/twitter/types/user/Followers.js.map +1 -0
  115. package/dist/{types/raw → twitter/types}/user/Following.d.ts +176 -176
  116. package/dist/{types/Query.js → twitter/types/user/Following.js} +3 -3
  117. package/dist/twitter/types/user/Following.js.map +1 -0
  118. package/dist/{types/raw/data → twitter/types}/user/Likes.d.ts +1059 -1059
  119. package/dist/{types/interfaces/User.js → twitter/types/user/Likes.js} +3 -3
  120. package/dist/twitter/types/user/Likes.js.map +1 -0
  121. package/dist/{types/raw → twitter/types}/user/Tweets.d.ts +1512 -1512
  122. package/dist/twitter/types/user/Tweets.js +3 -0
  123. package/dist/twitter/types/user/Tweets.js.map +1 -0
  124. package/dist/{types/raw → twitter/types}/user/User.d.ts +117 -117
  125. package/dist/{types/raw/data → twitter/types}/user/User.js +2 -2
  126. package/dist/{types/data → twitter/types/user}/User.js.map +1 -1
  127. package/dist/types/Args.d.ts +38 -38
  128. package/dist/types/Args.js +4 -4
  129. package/dist/types/Authentication.d.ts +55 -55
  130. package/dist/types/Authentication.js +5 -5
  131. package/dist/types/Resolvers.d.ts +15 -15
  132. package/dist/types/Resolvers.js +2 -2
  133. package/dist/types/Rettiwt.d.ts +16 -16
  134. package/dist/types/Rettiwt.js +2 -2
  135. package/dist/types/Service.d.ts +22 -22
  136. package/dist/types/Service.js +4 -4
  137. package/dist/types/Tweet.d.ts +46 -46
  138. package/dist/types/Tweet.js +2 -2
  139. package/dist/types/User.d.ts +35 -35
  140. package/dist/types/User.js +2 -2
  141. package/docs/.nojekyll +1 -0
  142. package/docs/assets/highlight.css +64 -0
  143. package/docs/assets/main.js +58 -0
  144. package/docs/assets/search.js +1 -0
  145. package/docs/assets/style.css +1280 -0
  146. package/docs/classes/AccountService.html +286 -0
  147. package/docs/classes/AuthCookie.html +146 -0
  148. package/docs/classes/AuthService.html +147 -0
  149. package/docs/classes/CacheService.html +157 -0
  150. package/docs/classes/Cursor.html +102 -0
  151. package/docs/classes/CursoredData.html +126 -0
  152. package/docs/classes/DataValidationError.html +119 -0
  153. package/docs/classes/FetcherService.html +225 -0
  154. package/docs/classes/Tweet.html +210 -0
  155. package/docs/classes/TweetEntities.html +128 -0
  156. package/docs/classes/TweetFilter.html +221 -0
  157. package/docs/classes/TweetListArgs.html +118 -0
  158. package/docs/classes/TweetService.html +319 -0
  159. package/docs/classes/User.html +230 -0
  160. package/docs/classes/UserListArgs.html +118 -0
  161. package/docs/classes/UserService.html +355 -0
  162. package/docs/enums/HttpMethods.html +74 -0
  163. package/docs/functions/Rettiwt.html +99 -0
  164. package/docs/index.html +158 -0
  165. package/docs/interfaces/IAuthCookie.html +104 -0
  166. package/docs/interfaces/ICursor.html +77 -0
  167. package/docs/interfaces/ICursoredData.html +93 -0
  168. package/docs/interfaces/IDataContext.html +91 -0
  169. package/docs/interfaces/IListArgs.html +87 -0
  170. package/docs/interfaces/ITweet.html +176 -0
  171. package/docs/interfaces/ITweetEntities.html +104 -0
  172. package/docs/interfaces/ITweetFilter.html +158 -0
  173. package/docs/interfaces/IUser.html +194 -0
  174. package/docs/modules.html +109 -0
  175. package/package.json +2 -2
  176. package/src/graphql/resolvers/UserResolver.ts +4 -4
  177. package/src/graphql/types/UserTypes.ts +1 -1
  178. package/src/models/args/TweetFilter.ts +25 -4
  179. package/src/models/data/Tweet.ts +1 -1
  180. package/src/models/data/User.ts +1 -1
  181. package/src/services/auth/AccountService.ts +79 -53
  182. package/src/services/data/TweetService.ts +35 -65
  183. package/src/services/data/UserService.ts +42 -48
  184. package/src/services/helper/Parser.ts +3 -24
  185. package/src/services/helper/extractors/Tweets.ts +4 -4
  186. package/src/services/helper/extractors/Users.ts +5 -5
  187. package/src/services/util/FetcherService.ts +4 -4
  188. package/src/twitter/Url.ts +37 -0
  189. package/src/twitter/enums/Resources.ts +15 -0
  190. package/src/twitter/params/Query.ts +100 -0
  191. package/src/twitter/payloads/Args.ts +21 -0
  192. package/src/twitter/payloads/Features.ts +33 -0
  193. package/src/twitter/payloads/Variables.ts +73 -0
  194. package/src/twitter/types/request/Query.ts +91 -0
  195. package/src/{types/raw → twitter/types}/user/Tweets.ts +1747 -1747
  196. package/src/types/Args.ts +1 -1
  197. package/dist/Test.d.ts +0 -0
  198. package/dist/Test.js +0 -2
  199. package/dist/Test.js.map +0 -1
  200. package/dist/endpoints/Endpoints.d.ts +0 -14
  201. package/dist/endpoints/Endpoints.js +0 -20
  202. package/dist/endpoints/Endpoints.js.map +0 -1
  203. package/dist/endpoints/Url.d.ts +0 -5
  204. package/dist/endpoints/Url.js +0 -12
  205. package/dist/endpoints/Url.js.map +0 -1
  206. package/dist/enums/Endpoints.d.ts +0 -25
  207. package/dist/enums/Endpoints.js +0 -31
  208. package/dist/enums/Endpoints.js.map +0 -1
  209. package/dist/graphql/types/Errors.d.ts +0 -20
  210. package/dist/graphql/types/Errors.js +0 -28
  211. package/dist/graphql/types/Errors.js.map +0 -1
  212. package/dist/middlewares/Authentication.d.ts +0 -0
  213. package/dist/middlewares/Authentication.js +0 -2
  214. package/dist/middlewares/Authentication.js.map +0 -1
  215. package/dist/models/data/DataValidationError.d.ts +0 -18
  216. package/dist/models/data/DataValidationError.js +0 -21
  217. package/dist/models/data/DataValidationError.js.map +0 -1
  218. package/dist/models/data/Errors.d.ts +0 -18
  219. package/dist/models/data/Errors.js +0 -21
  220. package/dist/models/data/Errors.js.map +0 -1
  221. package/dist/models/data/Service.d.ts +0 -33
  222. package/dist/models/data/Service.js +0 -41
  223. package/dist/models/data/Service.js.map +0 -1
  224. package/dist/models/graphql/Global.d.ts +0 -4
  225. package/dist/models/graphql/Global.js +0 -13
  226. package/dist/models/graphql/Global.js.map +0 -1
  227. package/dist/models/graphql/TweetTypes.d.ts +0 -6
  228. package/dist/models/graphql/TweetTypes.js +0 -156
  229. package/dist/models/graphql/TweetTypes.js.map +0 -1
  230. package/dist/models/graphql/UserTypes.d.ts +0 -3
  231. package/dist/models/graphql/UserTypes.js +0 -139
  232. package/dist/models/graphql/UserTypes.js.map +0 -1
  233. package/dist/models/query/Variables.d.ts +0 -2
  234. package/dist/models/query/Variables.js +0 -10
  235. package/dist/models/query/Variables.js.map +0 -1
  236. package/dist/queries/RootQuery.d.ts +0 -4
  237. package/dist/queries/RootQuery.js +0 -70
  238. package/dist/queries/RootQuery.js.map +0 -1
  239. package/dist/requests/Url.d.ts +0 -5
  240. package/dist/requests/Url.js +0 -12
  241. package/dist/requests/Url.js.map +0 -1
  242. package/dist/requests/payloads/Variables.d.ts +0 -23
  243. package/dist/requests/payloads/Variables.js +0 -24
  244. package/dist/requests/payloads/Variables.js.map +0 -1
  245. package/dist/resolvers/AccountResolver.d.ts +0 -12
  246. package/dist/resolvers/AccountResolver.js +0 -84
  247. package/dist/resolvers/AccountResolver.js.map +0 -1
  248. package/dist/resolvers/ResolverBase.d.ts +0 -5
  249. package/dist/resolvers/ResolverBase.js +0 -11
  250. package/dist/resolvers/ResolverBase.js.map +0 -1
  251. package/dist/resolvers/TweetResolver.d.ts +0 -54
  252. package/dist/resolvers/TweetResolver.js +0 -332
  253. package/dist/resolvers/TweetResolver.js.map +0 -1
  254. package/dist/resolvers/UserResolver.d.ts +0 -38
  255. package/dist/resolvers/UserResolver.js +0 -253
  256. package/dist/resolvers/UserResolver.js.map +0 -1
  257. package/dist/services/AuthService.d.ts +0 -22
  258. package/dist/services/AuthService.js +0 -106
  259. package/dist/services/AuthService.js.map +0 -1
  260. package/dist/services/CacheService.d.ts +0 -30
  261. package/dist/services/CacheService.js +0 -93
  262. package/dist/services/CacheService.js.map +0 -1
  263. package/dist/services/FetcherService.d.ts +0 -61
  264. package/dist/services/FetcherService.js +0 -209
  265. package/dist/services/FetcherService.js.map +0 -1
  266. package/dist/services/accounts/AccountService.d.ts +0 -65
  267. package/dist/services/accounts/AccountService.js +0 -336
  268. package/dist/services/accounts/AccountService.js.map +0 -1
  269. package/dist/services/accounts/LoginFlows.d.ts +0 -77
  270. package/dist/services/accounts/LoginFlows.js +0 -92
  271. package/dist/services/accounts/LoginFlows.js.map +0 -1
  272. package/dist/services/auth/LoginFlows.d.ts +0 -77
  273. package/dist/services/auth/LoginFlows.js +0 -92
  274. package/dist/services/auth/LoginFlows.js.map +0 -1
  275. package/dist/services/data/TrendService.d.ts +0 -17
  276. package/dist/services/data/TrendService.js +0 -116
  277. package/dist/services/data/TrendService.js.map +0 -1
  278. package/dist/services/data/UserAccountService.d.ts +0 -42
  279. package/dist/services/data/UserAccountService.js +0 -239
  280. package/dist/services/data/UserAccountService.js.map +0 -1
  281. package/dist/services/helper/Deserializers.d.ts +0 -19
  282. package/dist/services/helper/Deserializers.js +0 -115
  283. package/dist/services/helper/Deserializers.js.map +0 -1
  284. package/dist/services/helper/Extractors.d.ts +0 -104
  285. package/dist/services/helper/Extractors.js +0 -432
  286. package/dist/services/helper/Extractors.js.map +0 -1
  287. package/dist/services/helper/Urls.d.ts +0 -85
  288. package/dist/services/helper/Urls.js +0 -130
  289. package/dist/services/helper/Urls.js.map +0 -1
  290. package/dist/services/helper/deserializers/Tweets.d.ts +0 -12
  291. package/dist/services/helper/deserializers/Tweets.js +0 -92
  292. package/dist/services/helper/deserializers/Tweets.js.map +0 -1
  293. package/dist/services/helper/deserializers/Users.d.ts +0 -7
  294. package/dist/services/helper/deserializers/Users.js +0 -27
  295. package/dist/services/helper/deserializers/Users.js.map +0 -1
  296. package/dist/services/helper/extractors/Trends.d.ts +0 -3
  297. package/dist/services/helper/extractors/Trends.js +0 -51
  298. package/dist/services/helper/extractors/Trends.js.map +0 -1
  299. package/dist/services/helper/urls/Trends.d.ts +0 -7
  300. package/dist/services/helper/urls/Trends.js +0 -13
  301. package/dist/services/helper/urls/Trends.js.map +0 -1
  302. package/dist/services/helper/urls/Tweets.d.ts +0 -32
  303. package/dist/services/helper/urls/Tweets.js +0 -51
  304. package/dist/services/helper/urls/Tweets.js.map +0 -1
  305. package/dist/services/helper/urls/Users.d.ts +0 -38
  306. package/dist/services/helper/urls/Users.js +0 -76
  307. package/dist/services/helper/urls/Users.js.map +0 -1
  308. package/dist/types/HTTP.d.ts +0 -17
  309. package/dist/types/HTTP.js +0 -23
  310. package/dist/types/HTTP.js.map +0 -1
  311. package/dist/types/Query.js.map +0 -1
  312. package/dist/types/Trends.d.ts +0 -50
  313. package/dist/types/Trends.js.map +0 -1
  314. package/dist/types/UserAccount.d.ts +0 -19
  315. package/dist/types/UserAccount.js +0 -4
  316. package/dist/types/UserAccount.js.map +0 -1
  317. package/dist/types/args/TweetFilter.d.ts +0 -54
  318. package/dist/types/args/TweetFilter.js +0 -96
  319. package/dist/types/args/TweetFilter.js.map +0 -1
  320. package/dist/types/args/TweetListArg.d.ts +0 -10
  321. package/dist/types/args/TweetListArg.js +0 -42
  322. package/dist/types/args/TweetListArg.js.map +0 -1
  323. package/dist/types/args/TweetListArgs.d.ts +0 -20
  324. package/dist/types/args/TweetListArgs.js +0 -52
  325. package/dist/types/args/TweetListArgs.js.map +0 -1
  326. package/dist/types/args/UserListArgs.d.ts +0 -16
  327. package/dist/types/args/UserListArgs.js +0 -48
  328. package/dist/types/args/UserListArgs.js.map +0 -1
  329. package/dist/types/data/Errors.d.ts +0 -35
  330. package/dist/types/data/Errors.js +0 -45
  331. package/dist/types/data/Errors.js.map +0 -1
  332. package/dist/types/data/Service.d.ts +0 -43
  333. package/dist/types/data/Service.js +0 -22
  334. package/dist/types/data/Service.js.map +0 -1
  335. package/dist/types/data/Tweet.d.ts +0 -98
  336. package/dist/types/data/Tweet.js.map +0 -1
  337. package/dist/types/data/TweetFilter.d.ts +0 -49
  338. package/dist/types/data/TweetFilter.js +0 -63
  339. package/dist/types/data/TweetFilter.js.map +0 -1
  340. package/dist/types/data/User.d.ts +0 -38
  341. package/dist/types/graphql/Errors.d.ts +0 -15
  342. package/dist/types/graphql/Errors.js +0 -23
  343. package/dist/types/graphql/Errors.js.map +0 -1
  344. package/dist/types/interfaces/Args.d.ts +0 -38
  345. package/dist/types/interfaces/Args.js +0 -5
  346. package/dist/types/interfaces/Args.js.map +0 -1
  347. package/dist/types/interfaces/Authentication.d.ts +0 -40
  348. package/dist/types/interfaces/Authentication.js +0 -5
  349. package/dist/types/interfaces/Authentication.js.map +0 -1
  350. package/dist/types/interfaces/Resolvers.d.ts +0 -14
  351. package/dist/types/interfaces/Resolvers.js +0 -3
  352. package/dist/types/interfaces/Resolvers.js.map +0 -1
  353. package/dist/types/interfaces/Rettiwt.d.ts +0 -16
  354. package/dist/types/interfaces/Rettiwt.js.map +0 -1
  355. package/dist/types/interfaces/Service.d.ts +0 -13
  356. package/dist/types/interfaces/Service.js +0 -3
  357. package/dist/types/interfaces/Service.js.map +0 -1
  358. package/dist/types/interfaces/Services.d.ts +0 -13
  359. package/dist/types/interfaces/Services.js +0 -3
  360. package/dist/types/interfaces/Services.js.map +0 -1
  361. package/dist/types/interfaces/Tweet.d.ts +0 -46
  362. package/dist/types/interfaces/Tweet.js +0 -3
  363. package/dist/types/interfaces/Tweet.js.map +0 -1
  364. package/dist/types/interfaces/TweetFilter.d.ts +0 -0
  365. package/dist/types/interfaces/TweetFilter.js +0 -2
  366. package/dist/types/interfaces/TweetFilter.js.map +0 -1
  367. package/dist/types/interfaces/User.d.ts +0 -35
  368. package/dist/types/interfaces/User.js.map +0 -1
  369. package/dist/types/raw/auth/Cookie.d.ts +0 -16
  370. package/dist/types/raw/auth/Cookie.js +0 -3
  371. package/dist/types/raw/auth/Cookie.js.map +0 -1
  372. package/dist/types/raw/data/tweet/Favouriters.js +0 -3
  373. package/dist/types/raw/data/tweet/Favouriters.js.map +0 -1
  374. package/dist/types/raw/data/tweet/Retweeters.d.ts +0 -171
  375. package/dist/types/raw/data/tweet/Retweeters.js +0 -3
  376. package/dist/types/raw/data/tweet/Retweeters.js.map +0 -1
  377. package/dist/types/raw/data/tweet/Tweet.js +0 -3
  378. package/dist/types/raw/data/tweet/Tweet.js.map +0 -1
  379. package/dist/types/raw/data/tweet/Tweets.d.ts +0 -386
  380. package/dist/types/raw/data/tweet/Tweets.js +0 -3
  381. package/dist/types/raw/data/tweet/Tweets.js.map +0 -1
  382. package/dist/types/raw/data/user/Followers.d.ts +0 -176
  383. package/dist/types/raw/data/user/Followers.js +0 -3
  384. package/dist/types/raw/data/user/Followers.js.map +0 -1
  385. package/dist/types/raw/data/user/Following.d.ts +0 -176
  386. package/dist/types/raw/data/user/Following.js +0 -3
  387. package/dist/types/raw/data/user/Following.js.map +0 -1
  388. package/dist/types/raw/data/user/Likes.js +0 -3
  389. package/dist/types/raw/data/user/Likes.js.map +0 -1
  390. package/dist/types/raw/data/user/User.d.ts +0 -117
  391. package/dist/types/raw/data/user/User.js.map +0 -1
  392. package/dist/types/raw/general/Trends.d.ts +0 -324
  393. package/dist/types/raw/general/Trends.js +0 -3
  394. package/dist/types/raw/general/Trends.js.map +0 -1
  395. package/dist/types/raw/query/tweet/Details.d.ts +0 -80
  396. package/dist/types/raw/query/tweet/Details.js +0 -5
  397. package/dist/types/raw/query/tweet/Details.js.map +0 -1
  398. package/dist/types/raw/query/tweet/Engagements.js +0 -3
  399. package/dist/types/raw/query/tweet/Engagements.js.map +0 -1
  400. package/dist/types/raw/query/tweet/Likes.d.ts +0 -29
  401. package/dist/types/raw/query/tweet/Likes.js +0 -3
  402. package/dist/types/raw/query/tweet/Likes.js.map +0 -1
  403. package/dist/types/raw/query/tweet/Retweets.d.ts +0 -29
  404. package/dist/types/raw/query/tweet/Retweets.js +0 -3
  405. package/dist/types/raw/query/tweet/Retweets.js.map +0 -1
  406. package/dist/types/raw/query/tweet/Search.d.ts +0 -40
  407. package/dist/types/raw/query/tweet/Search.js +0 -3
  408. package/dist/types/raw/query/tweet/Search.js.map +0 -1
  409. package/dist/types/raw/query/tweet/TweetDetails.d.ts +0 -34
  410. package/dist/types/raw/query/tweet/TweetDetails.js +0 -5
  411. package/dist/types/raw/query/tweet/TweetDetails.js.map +0 -1
  412. package/dist/types/raw/query/tweet/TweetLike.d.ts +0 -29
  413. package/dist/types/raw/query/tweet/TweetLike.js +0 -3
  414. package/dist/types/raw/query/tweet/TweetLike.js.map +0 -1
  415. package/dist/types/raw/query/tweet/TweetLikes.d.ts +0 -29
  416. package/dist/types/raw/query/tweet/TweetLikes.js +0 -3
  417. package/dist/types/raw/query/tweet/TweetLikes.js.map +0 -1
  418. package/dist/types/raw/query/tweet/TweetRetweets.d.ts +0 -0
  419. package/dist/types/raw/query/tweet/TweetRetweets.js +0 -2
  420. package/dist/types/raw/query/tweet/TweetRetweets.js.map +0 -1
  421. package/dist/types/raw/query/user/Details.d.ts +0 -34
  422. package/dist/types/raw/query/user/Details.js +0 -3
  423. package/dist/types/raw/query/user/Details.js.map +0 -1
  424. package/dist/types/raw/tweet/Favouriters.d.ts +0 -164
  425. package/dist/types/raw/tweet/Favouriters.js +0 -3
  426. package/dist/types/raw/tweet/Favouriters.js.map +0 -1
  427. package/dist/types/raw/tweet/Retweeters.js +0 -3
  428. package/dist/types/raw/tweet/Retweeters.js.map +0 -1
  429. package/dist/types/raw/tweet/Tweet.d.ts +0 -746
  430. package/dist/types/raw/tweet/Tweet.js +0 -3
  431. package/dist/types/raw/tweet/Tweet.js.map +0 -1
  432. package/dist/types/raw/tweet/Tweets.js +0 -3
  433. package/dist/types/raw/tweet/Tweets.js.map +0 -1
  434. package/dist/types/raw/user/Followers.js +0 -3
  435. package/dist/types/raw/user/Followers.js.map +0 -1
  436. package/dist/types/raw/user/Following.js +0 -3
  437. package/dist/types/raw/user/Following.js.map +0 -1
  438. package/dist/types/raw/user/Likes.d.ts +0 -1059
  439. package/dist/types/raw/user/Likes.js +0 -3
  440. package/dist/types/raw/user/Likes.js.map +0 -1
  441. package/dist/types/raw/user/Tweets.js +0 -3
  442. package/dist/types/raw/user/Tweets.js.map +0 -1
  443. package/dist/types/raw/user/User.js.map +0 -1
  444. package/dist/types/services/args/TweetFilter.d.ts +0 -50
  445. package/dist/types/services/args/TweetFilter.js +0 -76
  446. package/dist/types/services/args/TweetFilter.js.map +0 -1
  447. package/src/services/helper/urls/Tweets.ts +0 -46
  448. package/src/services/helper/urls/Users.ts +0 -78
  449. /package/src/{types/raw → twitter/types}/tweet/Favouriters.ts +0 -0
  450. /package/src/{types/raw → twitter/types}/tweet/Retweeters.ts +0 -0
  451. /package/src/{types/raw → twitter/types}/tweet/Tweet.ts +0 -0
  452. /package/src/{types/raw → twitter/types}/tweet/Tweets.ts +0 -0
  453. /package/src/{types/raw → twitter/types}/user/Followers.ts +0 -0
  454. /package/src/{types/raw → twitter/types}/user/Following.ts +0 -0
  455. /package/src/{types/raw → twitter/types}/user/Likes.ts +0 -0
  456. /package/src/{types/raw → twitter/types}/user/User.ts +0 -0
@@ -1,10 +1,10 @@
1
1
  // TYPES
2
2
  import { IDataExtract } from '../../../types/Resolvers';
3
3
  import { DataErrors } from '../../../enums/Errors';
4
- import RawTweet from '../../../types/raw/tweet/Tweet';
5
- import RawTweets from '../../../types/raw/tweet/Tweets';
6
- import RawRetweeters from '../../../types/raw/tweet/Retweeters';
7
- import RawLikers from '../../../types/raw/tweet/Favouriters';
4
+ import RawTweet from '../../../twitter/types/tweet/Tweet';
5
+ import RawTweets from '../../../twitter/types/tweet/Tweets';
6
+ import RawRetweeters from '../../../twitter/types/tweet/Retweeters';
7
+ import RawLikers from '../../../twitter/types/tweet/Favouriters';
8
8
 
9
9
  // PARSERS
10
10
  import * as Parsers from '../Parser';
@@ -1,11 +1,11 @@
1
1
  // TYPES
2
2
  import { IDataExtract } from '../../../types/Resolvers'
3
3
  import { DataErrors } from '../../../enums/Errors';
4
- import RawUser from '../../../types/raw/user/User';
5
- import RawUserTweets from '../../../types/raw/user/Tweets';
6
- import RawUserFollowers from '../../../types/raw/user/Followers';
7
- import RawUserFollowing from '../../../types/raw/user/Following';
8
- import RawUserLikes from '../../../types/raw/user/Likes';
4
+ import RawUser from '../../../twitter/types/user/User';
5
+ import RawUserTweets from '../../../twitter/types/user/Tweets';
6
+ import RawUserFollowers from '../../../twitter/types/user/Followers';
7
+ import RawUserFollowing from '../../../twitter/types/user/Following';
8
+ import RawUserLikes from '../../../twitter/types/user/Likes';
9
9
 
10
10
  // PARSERS
11
11
  import * as Parsers from '../Parser';
@@ -10,8 +10,8 @@ import { Tweet } from '../../models/data/Tweet';
10
10
  import { User } from '../../models/data/User';
11
11
 
12
12
  // TYPES
13
- import { Result as RawUser } from '../../types/raw/user/User';
14
- import { Result as RawTweet } from '../../types/raw/tweet/Tweet';
13
+ import { Result as RawUser } from '../../twitter/types/user/User';
14
+ import { Result as RawTweet } from '../../twitter/types/tweet/Tweet';
15
15
 
16
16
  // ENUMS
17
17
  import { HttpStatus } from "../../enums/HTTP";
@@ -37,7 +37,7 @@ export enum HttpMethods {
37
37
  export class FetcherService {
38
38
  // MEMBER DATA
39
39
  /** The authentication service instance. */
40
- private auth: AuthService;
40
+ protected auth: AuthService;
41
41
 
42
42
  /** The caching service instance. */
43
43
  private cache: CacheService;
@@ -71,7 +71,7 @@ export class FetcherService {
71
71
  if (res.statusCode != 200 && res.statusCode in HttpStatus) {
72
72
  throw new Error(HttpStatus[res.statusCode])
73
73
  }
74
-
74
+
75
75
  return res;
76
76
  }
77
77
 
@@ -0,0 +1,37 @@
1
+ // ENUMS
2
+ import { ResourceType } from "./enums/Resources";
3
+
4
+ // PAYLOADS
5
+ import { Args } from './payloads/Args';
6
+ import { Query } from './params/Query';
7
+
8
+ /**
9
+ * A class that deals with generation of URLs to various resources on Twitter.
10
+ */
11
+ export class Url {
12
+ /** The base Twitter API url. */
13
+ private baseUrl: string = 'https://api.twitter.com';
14
+
15
+ /** The fully initialized target resource URL. */
16
+ public fullUrl: string;
17
+
18
+ /**
19
+ * Initializes a URL for fetching the specified resource, using the given arguments.
20
+ *
21
+ * @param resourceType The type of resource to fetch.
22
+ * @param args Any additional arguments.
23
+ */
24
+ constructor(resourceType: ResourceType, args: Args) {
25
+ /**
26
+ * Initializing full URL along with additional URL parameters.
27
+ */
28
+ this.fullUrl = `${this.baseUrl}${resourceType}?${new Query(resourceType, args).toString()}`;
29
+ }
30
+
31
+ /**
32
+ * @returns The string representation of thi Url.
33
+ */
34
+ public toString(): string {
35
+ return this.fullUrl;
36
+ }
37
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * The different types of resources that can be fetched.
3
+ */
4
+ export enum ResourceType {
5
+ 'TWEETS' = '/2/search/adaptive.json',
6
+ 'TWEET_DETAILS' = '/graphql/lXI2kaM2hgmbf7h42kpxuA/TweetDetail',
7
+ 'TWEET_LIKES' = '/graphql/56ZwFC3Vui31fF8IYX8EGA/Favoriters',
8
+ 'TWEET_RETWEETS' = '/graphql/Wd7DVeLqMj_JQiTL0tjJwQ/Retweeters',
9
+ 'USER_DETAILS' = '/graphql/hVhfo_TquFTmgL7gYwf91Q/UserByScreenName',
10
+ 'USER_DETAILS_BY_ID' = '/graphql/mi_IjXgFyr41N9zkszPz9w/UserByRestId',
11
+ 'USER_TWEETS' = '/graphql/xxLjoOBBPpYBHbBTI-hevQ/UserTweetsAndReplies',
12
+ 'USER_FOLLOWING' = '/graphql/mSnjZc5CTm2Z5Lu_i4XsPQ/Following',
13
+ 'USER_FOLLOWERS' = '/graphql/nwlAnaw7oKXcVLi91ehy7Q/Followers',
14
+ 'USER_LIKES' = '/graphql/gP4ZKghLd4tpILgS6VudAQ/Likes'
15
+ };
@@ -0,0 +1,100 @@
1
+ // PAYLOADS
2
+ import { Variables } from '../payloads/Variables';
3
+ import { Features } from '../payloads/Features';
4
+ import { Args } from '../payloads/Args';
5
+
6
+ // TYPES
7
+ import { IQuery } from '../types/request/Query';
8
+
9
+ // ENUMS
10
+ import { ResourceType } from '../enums/Resources';
11
+
12
+ /**
13
+ * The URL query parameters that must be sent while making requests to Twitter API.
14
+ */
15
+ export class Query implements IQuery {
16
+ cards_platform?: string;
17
+ count?: number;
18
+ cursor?: string;
19
+ ext?: string;
20
+ include_blocked_by?: number;
21
+ include_blocking?: number;
22
+ include_can_dm?: number;
23
+ include_can_media_tag?: number;
24
+ include_cards?: number;
25
+ include_entities?: boolean = true;
26
+ include_ext_alt_text?: boolean;
27
+ include_ext_collab_control?: boolean;
28
+ include_ext_edit_control?: boolean;
29
+ include_ext_has_nft_avatar?: number;
30
+ include_ext_is_blue_verified?: number;
31
+ include_ext_limited_action_results?: boolean;
32
+ include_ext_media_availability?: boolean;
33
+ include_ext_media_color?: boolean;
34
+ include_ext_sensitive_media_warning?: boolean;
35
+ include_ext_trusted_friends_metadata?: boolean;
36
+ include_ext_verified_type?: number;
37
+ include_ext_views?: boolean;
38
+ include_followed_by?: number;
39
+ include_mute_edge?: number;
40
+ include_profile_interstitial_type?: number;
41
+ include_quote_count?: boolean = true;
42
+ include_reply_count?: number = 1;
43
+ include_user_entities?: boolean = true;
44
+ include_want_retweets?: number = 1;
45
+ pc?: number;
46
+ q?: string;
47
+ query_source?: string;
48
+ send_error_codes?: boolean;
49
+ simple_quoted_tweet?: boolean;
50
+ skip_status?: number;
51
+ spelling_corrections?: number;
52
+ tweet_mode?: string = 'extended';
53
+ tweet_search_mode?: string = 'live';
54
+
55
+ /**
56
+ * Variables for fetching data.
57
+ */
58
+ variables?: string;
59
+
60
+ /**
61
+ * Additional data features that must be fetched.
62
+ */
63
+ features?: string;
64
+
65
+ /**
66
+ * Initializes the URL parameters.
67
+ *
68
+ * @param resourceType The type of resource requested.
69
+ * @param args Additional user-defined arguments to be sent in the request.
70
+ */
71
+ constructor(resourceType: ResourceType, args: Args) {
72
+ /**
73
+ * Only the endpoint for fetching tweets (using advanced search) requires the parameters defined in this class.
74
+ * All other endpoints required only 'variables' and 'features' fields.
75
+ */
76
+ if (resourceType == ResourceType.TWEETS) {
77
+ this.q = encodeURIComponent(args.query ?? '');
78
+ this.count = args.count;
79
+ this.cursor = args.cursor;
80
+ }
81
+ else {
82
+ this.variables = new Variables(resourceType, args).toString();
83
+ this.features = new Features().toString();
84
+ }
85
+ }
86
+
87
+ /**
88
+ * Converts this object to it's string representation.
89
+ *
90
+ * @returns 'this' object's string representation;
91
+ */
92
+ toString(): string {
93
+ /**
94
+ * This first filters out all the empty paramters.
95
+ * Then it formats each parameter key value pair as 'key=value'.
96
+ * Then it joins the list of all formatted parameters using '&' as a separator.
97
+ */
98
+ return Object.entries(this).filter(([key, value]) => value).map(([key, value]) => `${key}=${value}`).join('&');
99
+ }
100
+ }
@@ -0,0 +1,21 @@
1
+ // TYPES
2
+ import { IArgs } from '../types/request/Query';
3
+
4
+ /**
5
+ * The arguments for fetching cursored list.
6
+ *
7
+ * @public
8
+ */
9
+ export class Args implements IArgs {
10
+ /** The query string that may be used to filter data. */
11
+ query?: string;
12
+
13
+ /** The rest id of the data item to be requested. */
14
+ id?: string;
15
+
16
+ /** The number of data items to fetch. */
17
+ count?: number;
18
+
19
+ /** The cursor to the batch of data to fetch. */
20
+ cursor?: string;
21
+ };
@@ -0,0 +1,33 @@
1
+ // TYPES
2
+ import { IFeatures } from '../types/request/Query';
3
+
4
+ /**
5
+ * The additional features that may be fetched while making requests to Twitter API.
6
+ */
7
+ export class Features implements IFeatures {
8
+ graphql_is_translatable_rweb_tweet_is_translatable_enabled = false;
9
+ interactive_text_enabled = false;
10
+ longform_notetweets_consumption_enabled = false;
11
+ responsive_web_edit_tweet_api_enabled = false;
12
+ responsive_web_enhance_cards_enabled = false;
13
+ responsive_web_graphql_timeline_navigation_enabled = false;
14
+ responsive_web_text_conversations_enabled = false;
15
+ responsive_web_twitter_blue_verified_badge_is_enabled = false;
16
+ responsive_web_uc_gql_enabled = false;
17
+ standardized_nudges_misinfo = false;
18
+ tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled = false;
19
+ tweetypie_unmention_optimization_enabled = false;
20
+ verified_phone_label_enabled = false;
21
+ vibe_api_enabled = false;
22
+ view_counts_everywhere_api_enabled = false;
23
+ view_counts_public_visibility_enabled = false;
24
+
25
+ /**
26
+ * Converts this object to it's string representation.
27
+ *
28
+ * @returns 'this' object's string representation.
29
+ */
30
+ toString(): string {
31
+ return `${encodeURIComponent(JSON.stringify(this))}`;
32
+ }
33
+ }
@@ -0,0 +1,73 @@
1
+ // PAYLOADS
2
+ import { Args } from './Args';
3
+
4
+ // TYPES
5
+ import { IVariables } from '../types/request/Query';
6
+
7
+ // ENUMS
8
+ import { ResourceType } from '../enums/Resources';
9
+
10
+ /**
11
+ * The variables that must be sent as payload while making requests to Twitter API.
12
+ */
13
+ export class Variables implements IVariables {
14
+ tweetId?: string;
15
+ focalTweetId?: string;
16
+ userId?: string;
17
+ screen_name?: string;
18
+ count?: number;
19
+ cursor?: string;
20
+ includePromotedContent: boolean = false;
21
+ referrer: string = '';
22
+ withBirdwatchNotes: boolean = false;
23
+ withCommunity: boolean = false;
24
+ withDownvotePerspective: boolean = false;
25
+ withQuickPromoteEligibilityTweetFields: boolean = false;
26
+ withReactionsMetadata: boolean = false;
27
+ withReactionsPerspective: boolean = false;
28
+ withSuperFollowsTweetFields: boolean = false;
29
+ withSuperFollowsUserFields: boolean = false;
30
+ withV2Timeline: boolean = true;
31
+ withVoice: boolean = false;
32
+ with_rux_injections: boolean = false;
33
+ withClientEventToken: boolean = false;
34
+
35
+ /**
36
+ * Initializes the appropriate Variables object based on the requred resource type and parameters.
37
+ *
38
+ * @param resourceType The type of resource that is requested.
39
+ * @param args The additional user-defined arguments for fetching the resource.
40
+ */
41
+ constructor(resourceType: ResourceType, args: Args) {
42
+ if (resourceType == ResourceType.TWEET_DETAILS) {
43
+ this.focalTweetId = args.id;
44
+ this.count = args.count;
45
+ this.cursor = args.cursor;
46
+ }
47
+ else if (resourceType == ResourceType.TWEET_LIKES || resourceType == ResourceType.TWEET_RETWEETS) {
48
+ this.tweetId = args.id;
49
+ this.count = args.count;
50
+ this.cursor = args.cursor;
51
+ }
52
+ else if (resourceType == ResourceType.USER_DETAILS) {
53
+ this.screen_name = args.id;
54
+ }
55
+ else if (resourceType == ResourceType.USER_DETAILS_BY_ID) {
56
+ this.userId = args.id;
57
+ }
58
+ else if (resourceType == ResourceType.USER_FOLLOWERS || resourceType == ResourceType.USER_FOLLOWING || resourceType == ResourceType.USER_LIKES || resourceType == ResourceType.USER_TWEETS) {
59
+ this.userId = args.id;
60
+ this.count = args.count;
61
+ this.cursor = args.cursor;
62
+ }
63
+ }
64
+
65
+ /**
66
+ * Converts this object to it's string representation.
67
+ *
68
+ * @returns 'this' object's string representation.
69
+ */
70
+ toString(): string {
71
+ return `${encodeURIComponent(JSON.stringify(this))}`;
72
+ }
73
+ }
@@ -0,0 +1,91 @@
1
+ export interface IArgs {
2
+ query?: string;
3
+ id?: string;
4
+ count?: number;
5
+ cursor?: string;
6
+ };
7
+
8
+ export interface IVariables {
9
+ tweetId?: string;
10
+ focalTweetId?: string;
11
+ userId?: string;
12
+ screen_name?: string;
13
+ count?: number;
14
+ cursor?: string;
15
+ includePromotedContent: boolean;
16
+ referrer: string;
17
+ withBirdwatchNotes: boolean;
18
+ withCommunity: boolean;
19
+ withDownvotePerspective: boolean;
20
+ withQuickPromoteEligibilityTweetFields: boolean;
21
+ withReactionsMetadata: boolean;
22
+ withReactionsPerspective: boolean;
23
+ withSuperFollowsTweetFields: boolean;
24
+ withSuperFollowsUserFields: boolean;
25
+ withV2Timeline: boolean;
26
+ withVoice: boolean;
27
+ with_rux_injections: boolean;
28
+ withClientEventToken: boolean;
29
+
30
+
31
+ }
32
+
33
+ export interface IFeatures {
34
+ graphql_is_translatable_rweb_tweet_is_translatable_enabled: boolean;
35
+ interactive_text_enabled: boolean;
36
+ longform_notetweets_consumption_enabled: boolean;
37
+ responsive_web_edit_tweet_api_enabled: boolean;
38
+ responsive_web_enhance_cards_enabled: boolean;
39
+ responsive_web_graphql_timeline_navigation_enabled: boolean;
40
+ responsive_web_text_conversations_enabled: boolean;
41
+ responsive_web_twitter_blue_verified_badge_is_enabled: boolean;
42
+ responsive_web_uc_gql_enabled: boolean;
43
+ standardized_nudges_misinfo: boolean;
44
+ tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled: boolean;
45
+ tweetypie_unmention_optimization_enabled: boolean;
46
+ verified_phone_label_enabled: boolean;
47
+ vibe_api_enabled: boolean;
48
+ view_counts_everywhere_api_enabled: boolean;
49
+ view_counts_public_visibility_enabled: boolean;
50
+ }
51
+
52
+ export interface IQuery {
53
+ cards_platform?: string;
54
+ count?: number;
55
+ cursor?: string;
56
+ ext?: string;
57
+ include_blocked_by?: number;
58
+ include_blocking?: number;
59
+ include_can_dm?: number;
60
+ include_can_media_tag?: number;
61
+ include_cards?: number;
62
+ include_entities?: boolean;
63
+ include_ext_alt_text?: boolean;
64
+ include_ext_collab_control?: boolean;
65
+ include_ext_edit_control?: boolean;
66
+ include_ext_has_nft_avatar?: number;
67
+ include_ext_is_blue_verified?: number;
68
+ include_ext_limited_action_results?: boolean;
69
+ include_ext_media_availability?: boolean;
70
+ include_ext_media_color?: boolean;
71
+ include_ext_sensitive_media_warning?: boolean;
72
+ include_ext_trusted_friends_metadata?: boolean;
73
+ include_ext_verified_type?: number;
74
+ include_ext_views?: boolean;
75
+ include_followed_by?: number;
76
+ include_mute_edge?: number;
77
+ include_profile_interstitial_type?: number;
78
+ include_quote_count?: boolean;
79
+ include_reply_count?: number;
80
+ include_user_entities?: boolean;
81
+ include_want_retweets?: number;
82
+ pc?: number;
83
+ q?: string;
84
+ query_source?: string;
85
+ send_error_codes?: boolean;
86
+ simple_quoted_tweet?: boolean;
87
+ skip_status?: number;
88
+ spelling_corrections?: number;
89
+ tweet_mode?: string;
90
+ tweet_search_mode?: string;
91
+ }