x-twitter-scraper 0.12.4 → 0.13.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 (466) hide show
  1. package/CHANGELOG.md +65 -0
  2. package/README.md +30 -9
  3. package/client.d.mts +18 -15
  4. package/client.d.mts.map +1 -1
  5. package/client.d.ts +18 -15
  6. package/client.d.ts.map +1 -1
  7. package/client.js +3 -3
  8. package/client.js.map +1 -1
  9. package/client.mjs +4 -4
  10. package/client.mjs.map +1 -1
  11. package/core/streaming.d.mts +33 -0
  12. package/core/streaming.d.mts.map +1 -0
  13. package/core/streaming.d.ts +33 -0
  14. package/core/streaming.d.ts.map +1 -0
  15. package/core/streaming.js +270 -0
  16. package/core/streaming.js.map +1 -0
  17. package/core/streaming.mjs +265 -0
  18. package/core/streaming.mjs.map +1 -0
  19. package/internal/decoders/line.d.mts +17 -0
  20. package/internal/decoders/line.d.mts.map +1 -0
  21. package/internal/decoders/line.d.ts +17 -0
  22. package/internal/decoders/line.d.ts.map +1 -0
  23. package/internal/decoders/line.js +116 -0
  24. package/internal/decoders/line.js.map +1 -0
  25. package/internal/decoders/line.mjs +111 -0
  26. package/internal/decoders/line.mjs.map +1 -0
  27. package/internal/parse.d.mts.map +1 -1
  28. package/internal/parse.d.ts.map +1 -1
  29. package/internal/parse.js +7 -0
  30. package/internal/parse.js.map +1 -1
  31. package/internal/parse.mjs +7 -0
  32. package/internal/parse.mjs.map +1 -1
  33. package/internal/tslib.js +18 -18
  34. package/package.json +23 -5
  35. package/resources/account.d.mts +35 -12
  36. package/resources/account.d.mts.map +1 -1
  37. package/resources/account.d.ts +35 -12
  38. package/resources/account.d.ts.map +1 -1
  39. package/resources/account.js +4 -3
  40. package/resources/account.js.map +1 -1
  41. package/resources/account.mjs +4 -3
  42. package/resources/account.mjs.map +1 -1
  43. package/resources/compose.d.mts +77 -21
  44. package/resources/compose.d.mts.map +1 -1
  45. package/resources/compose.d.ts +77 -21
  46. package/resources/compose.d.ts.map +1 -1
  47. package/resources/compose.js +3 -4
  48. package/resources/compose.js.map +1 -1
  49. package/resources/compose.mjs +3 -4
  50. package/resources/compose.mjs.map +1 -1
  51. package/resources/credits.d.mts +18 -10
  52. package/resources/credits.d.mts.map +1 -1
  53. package/resources/credits.d.ts +18 -10
  54. package/resources/credits.d.ts.map +1 -1
  55. package/resources/credits.js +5 -4
  56. package/resources/credits.js.map +1 -1
  57. package/resources/credits.mjs +5 -4
  58. package/resources/credits.mjs.map +1 -1
  59. package/resources/drafts.d.mts +13 -17
  60. package/resources/drafts.d.mts.map +1 -1
  61. package/resources/drafts.d.ts +13 -17
  62. package/resources/drafts.d.ts.map +1 -1
  63. package/resources/drafts.js +4 -4
  64. package/resources/drafts.mjs +4 -4
  65. package/resources/draws.d.mts +84 -28
  66. package/resources/draws.d.mts.map +1 -1
  67. package/resources/draws.d.ts +84 -28
  68. package/resources/draws.d.ts.map +1 -1
  69. package/resources/draws.js +24 -9
  70. package/resources/draws.js.map +1 -1
  71. package/resources/draws.mjs +24 -9
  72. package/resources/draws.mjs.map +1 -1
  73. package/resources/events.d.mts +2564 -21
  74. package/resources/events.d.mts.map +1 -1
  75. package/resources/events.d.ts +2564 -21
  76. package/resources/events.d.ts.map +1 -1
  77. package/resources/events.js +34 -2
  78. package/resources/events.js.map +1 -1
  79. package/resources/events.mjs +34 -2
  80. package/resources/events.mjs.map +1 -1
  81. package/resources/extractions.d.mts +410 -128
  82. package/resources/extractions.d.mts.map +1 -1
  83. package/resources/extractions.d.ts +410 -128
  84. package/resources/extractions.d.ts.map +1 -1
  85. package/resources/extractions.js +74 -12
  86. package/resources/extractions.js.map +1 -1
  87. package/resources/extractions.mjs +74 -12
  88. package/resources/extractions.mjs.map +1 -1
  89. package/resources/guest-wallets.d.mts +6 -5
  90. package/resources/guest-wallets.d.mts.map +1 -1
  91. package/resources/guest-wallets.d.ts +6 -5
  92. package/resources/guest-wallets.d.ts.map +1 -1
  93. package/resources/guest-wallets.js +2 -1
  94. package/resources/guest-wallets.js.map +1 -1
  95. package/resources/guest-wallets.mjs +2 -1
  96. package/resources/guest-wallets.mjs.map +1 -1
  97. package/resources/index.d.mts +6 -6
  98. package/resources/index.d.mts.map +1 -1
  99. package/resources/index.d.ts +6 -6
  100. package/resources/index.d.ts.map +1 -1
  101. package/resources/index.js.map +1 -1
  102. package/resources/index.mjs +1 -1
  103. package/resources/index.mjs.map +1 -1
  104. package/resources/monitors/index.d.mts +2 -2
  105. package/resources/monitors/index.d.mts.map +1 -1
  106. package/resources/monitors/index.d.ts +2 -2
  107. package/resources/monitors/index.d.ts.map +1 -1
  108. package/resources/monitors/index.js.map +1 -1
  109. package/resources/monitors/index.mjs.map +1 -1
  110. package/resources/monitors/keywords.d.mts +66 -14
  111. package/resources/monitors/keywords.d.mts.map +1 -1
  112. package/resources/monitors/keywords.d.ts +66 -14
  113. package/resources/monitors/keywords.d.ts.map +1 -1
  114. package/resources/monitors/keywords.js +16 -10
  115. package/resources/monitors/keywords.js.map +1 -1
  116. package/resources/monitors/keywords.mjs +16 -10
  117. package/resources/monitors/keywords.mjs.map +1 -1
  118. package/resources/monitors/monitors.d.mts +53 -16
  119. package/resources/monitors/monitors.d.mts.map +1 -1
  120. package/resources/monitors/monitors.d.ts +53 -16
  121. package/resources/monitors/monitors.d.ts.map +1 -1
  122. package/resources/monitors/monitors.js +12 -10
  123. package/resources/monitors/monitors.js.map +1 -1
  124. package/resources/monitors/monitors.mjs +12 -10
  125. package/resources/monitors/monitors.mjs.map +1 -1
  126. package/resources/radar.d.mts +32 -36
  127. package/resources/radar.d.mts.map +1 -1
  128. package/resources/radar.d.ts +32 -36
  129. package/resources/radar.d.ts.map +1 -1
  130. package/resources/radar.js +1 -1
  131. package/resources/radar.mjs +1 -1
  132. package/resources/shared.d.mts +1726 -233
  133. package/resources/shared.d.mts.map +1 -1
  134. package/resources/shared.d.ts +1726 -233
  135. package/resources/shared.d.ts.map +1 -1
  136. package/resources/styles.d.mts +34 -23
  137. package/resources/styles.d.mts.map +1 -1
  138. package/resources/styles.d.ts +34 -23
  139. package/resources/styles.d.ts.map +1 -1
  140. package/resources/styles.js +11 -13
  141. package/resources/styles.js.map +1 -1
  142. package/resources/styles.mjs +11 -13
  143. package/resources/styles.mjs.map +1 -1
  144. package/resources/subscribe.d.mts +1 -1
  145. package/resources/subscribe.d.ts +1 -1
  146. package/resources/subscribe.js +1 -1
  147. package/resources/subscribe.mjs +1 -1
  148. package/resources/support/index.d.mts +1 -1
  149. package/resources/support/index.d.mts.map +1 -1
  150. package/resources/support/index.d.ts +1 -1
  151. package/resources/support/index.d.ts.map +1 -1
  152. package/resources/support/index.js.map +1 -1
  153. package/resources/support/index.mjs.map +1 -1
  154. package/resources/support/support.d.mts +2 -2
  155. package/resources/support/support.d.mts.map +1 -1
  156. package/resources/support/support.d.ts +2 -2
  157. package/resources/support/support.d.ts.map +1 -1
  158. package/resources/support/support.js.map +1 -1
  159. package/resources/support/support.mjs.map +1 -1
  160. package/resources/support/tickets.d.mts +30 -10
  161. package/resources/support/tickets.d.mts.map +1 -1
  162. package/resources/support/tickets.d.ts +30 -10
  163. package/resources/support/tickets.d.ts.map +1 -1
  164. package/resources/support/tickets.js +7 -7
  165. package/resources/support/tickets.js.map +1 -1
  166. package/resources/support/tickets.mjs +7 -7
  167. package/resources/support/tickets.mjs.map +1 -1
  168. package/resources/trends.d.mts +21 -5
  169. package/resources/trends.d.mts.map +1 -1
  170. package/resources/trends.d.ts +21 -5
  171. package/resources/trends.d.ts.map +1 -1
  172. package/resources/trends.js +2 -1
  173. package/resources/trends.js.map +1 -1
  174. package/resources/trends.mjs +2 -1
  175. package/resources/trends.mjs.map +1 -1
  176. package/resources/webhooks.d.mts +80 -14
  177. package/resources/webhooks.d.mts.map +1 -1
  178. package/resources/webhooks.d.ts +80 -14
  179. package/resources/webhooks.d.ts.map +1 -1
  180. package/resources/webhooks.js +30 -11
  181. package/resources/webhooks.js.map +1 -1
  182. package/resources/webhooks.mjs +30 -11
  183. package/resources/webhooks.mjs.map +1 -1
  184. package/resources/x/account-connection-attempts.d.mts +1 -1
  185. package/resources/x/account-connection-attempts.d.ts +1 -1
  186. package/resources/x/account-connection-attempts.js +1 -1
  187. package/resources/x/account-connection-attempts.mjs +1 -1
  188. package/resources/x/account-connection-challenges.d.mts +30 -11
  189. package/resources/x/account-connection-challenges.d.mts.map +1 -1
  190. package/resources/x/account-connection-challenges.d.ts +30 -11
  191. package/resources/x/account-connection-challenges.d.ts.map +1 -1
  192. package/resources/x/account-connection-challenges.js +5 -4
  193. package/resources/x/account-connection-challenges.js.map +1 -1
  194. package/resources/x/account-connection-challenges.mjs +5 -4
  195. package/resources/x/account-connection-challenges.mjs.map +1 -1
  196. package/resources/x/accounts.d.mts +38 -10
  197. package/resources/x/accounts.d.mts.map +1 -1
  198. package/resources/x/accounts.d.ts +38 -10
  199. package/resources/x/accounts.d.ts.map +1 -1
  200. package/resources/x/accounts.js +8 -7
  201. package/resources/x/accounts.js.map +1 -1
  202. package/resources/x/accounts.mjs +8 -7
  203. package/resources/x/accounts.mjs.map +1 -1
  204. package/resources/x/analysis.d.mts +3274 -0
  205. package/resources/x/analysis.d.mts.map +1 -0
  206. package/resources/x/analysis.d.ts +3274 -0
  207. package/resources/x/analysis.d.ts.map +1 -0
  208. package/resources/x/analysis.js +132 -0
  209. package/resources/x/analysis.js.map +1 -0
  210. package/resources/x/analysis.mjs +128 -0
  211. package/resources/x/analysis.mjs.map +1 -0
  212. package/resources/x/bookmarks.d.mts +84 -9
  213. package/resources/x/bookmarks.d.mts.map +1 -1
  214. package/resources/x/bookmarks.d.ts +84 -9
  215. package/resources/x/bookmarks.d.ts.map +1 -1
  216. package/resources/x/bookmarks.js +6 -4
  217. package/resources/x/bookmarks.js.map +1 -1
  218. package/resources/x/bookmarks.mjs +6 -4
  219. package/resources/x/bookmarks.mjs.map +1 -1
  220. package/resources/x/broadcasts.d.mts +176 -0
  221. package/resources/x/broadcasts.d.mts.map +1 -0
  222. package/resources/x/broadcasts.d.ts +176 -0
  223. package/resources/x/broadcasts.d.ts.map +1 -0
  224. package/resources/x/broadcasts.js +29 -0
  225. package/resources/x/broadcasts.js.map +1 -0
  226. package/resources/x/broadcasts.mjs +25 -0
  227. package/resources/x/broadcasts.mjs.map +1 -0
  228. package/resources/x/communities/communities.d.mts +612 -128
  229. package/resources/x/communities/communities.d.mts.map +1 -1
  230. package/resources/x/communities/communities.d.ts +612 -128
  231. package/resources/x/communities/communities.d.ts.map +1 -1
  232. package/resources/x/communities/communities.js +96 -17
  233. package/resources/x/communities/communities.js.map +1 -1
  234. package/resources/x/communities/communities.mjs +96 -17
  235. package/resources/x/communities/communities.mjs.map +1 -1
  236. package/resources/x/communities/index.d.mts +2 -1
  237. package/resources/x/communities/index.d.mts.map +1 -1
  238. package/resources/x/communities/index.d.ts +2 -1
  239. package/resources/x/communities/index.d.ts.map +1 -1
  240. package/resources/x/communities/index.js +3 -1
  241. package/resources/x/communities/index.js.map +1 -1
  242. package/resources/x/communities/index.mjs +1 -0
  243. package/resources/x/communities/index.mjs.map +1 -1
  244. package/resources/x/communities/join.d.mts +46 -25
  245. package/resources/x/communities/join.d.mts.map +1 -1
  246. package/resources/x/communities/join.d.ts +46 -25
  247. package/resources/x/communities/join.d.ts.map +1 -1
  248. package/resources/x/communities/join.js +10 -7
  249. package/resources/x/communities/join.js.map +1 -1
  250. package/resources/x/communities/join.mjs +10 -7
  251. package/resources/x/communities/join.mjs.map +1 -1
  252. package/resources/x/communities/media.d.mts +197 -0
  253. package/resources/x/communities/media.d.mts.map +1 -0
  254. package/resources/x/communities/media.d.ts +197 -0
  255. package/resources/x/communities/media.d.ts.map +1 -0
  256. package/resources/x/communities/media.js +29 -0
  257. package/resources/x/communities/media.js.map +1 -0
  258. package/resources/x/communities/media.mjs +25 -0
  259. package/resources/x/communities/media.mjs.map +1 -0
  260. package/resources/x/communities/tweets.d.mts +350 -20
  261. package/resources/x/communities/tweets.d.mts.map +1 -1
  262. package/resources/x/communities/tweets.d.ts +350 -20
  263. package/resources/x/communities/tweets.d.ts.map +1 -1
  264. package/resources/x/communities/tweets.js +8 -7
  265. package/resources/x/communities/tweets.js.map +1 -1
  266. package/resources/x/communities/tweets.mjs +8 -7
  267. package/resources/x/communities/tweets.mjs.map +1 -1
  268. package/resources/x/dm.d.mts +245 -13
  269. package/resources/x/dm.d.mts.map +1 -1
  270. package/resources/x/dm.d.ts +245 -13
  271. package/resources/x/dm.d.ts.map +1 -1
  272. package/resources/x/dm.js +29 -2
  273. package/resources/x/dm.js.map +1 -1
  274. package/resources/x/dm.mjs +29 -2
  275. package/resources/x/dm.mjs.map +1 -1
  276. package/resources/x/followers.d.mts +31 -3
  277. package/resources/x/followers.d.mts.map +1 -1
  278. package/resources/x/followers.d.ts +31 -3
  279. package/resources/x/followers.d.ts.map +1 -1
  280. package/resources/x/followers.js +2 -1
  281. package/resources/x/followers.js.map +1 -1
  282. package/resources/x/followers.mjs +2 -1
  283. package/resources/x/followers.mjs.map +1 -1
  284. package/resources/x/index.d.mts +12 -8
  285. package/resources/x/index.d.mts.map +1 -1
  286. package/resources/x/index.d.ts +12 -8
  287. package/resources/x/index.d.ts.map +1 -1
  288. package/resources/x/index.js +9 -1
  289. package/resources/x/index.js.map +1 -1
  290. package/resources/x/index.mjs +5 -1
  291. package/resources/x/index.mjs.map +1 -1
  292. package/resources/x/jobs.d.mts +506 -0
  293. package/resources/x/jobs.d.mts.map +1 -0
  294. package/resources/x/jobs.d.ts +506 -0
  295. package/resources/x/jobs.d.ts.map +1 -0
  296. package/resources/x/jobs.js +60 -0
  297. package/resources/x/jobs.js.map +1 -0
  298. package/resources/x/jobs.mjs +56 -0
  299. package/resources/x/jobs.mjs.map +1 -0
  300. package/resources/x/lists.d.mts +1058 -27
  301. package/resources/x/lists.d.mts.map +1 -1
  302. package/resources/x/lists.d.ts +1058 -27
  303. package/resources/x/lists.d.ts.map +1 -1
  304. package/resources/x/lists.js +39 -9
  305. package/resources/x/lists.js.map +1 -1
  306. package/resources/x/lists.mjs +39 -9
  307. package/resources/x/lists.mjs.map +1 -1
  308. package/resources/x/media.d.mts +24 -13
  309. package/resources/x/media.d.mts.map +1 -1
  310. package/resources/x/media.d.ts +24 -13
  311. package/resources/x/media.d.ts.map +1 -1
  312. package/resources/x/media.js +2 -2
  313. package/resources/x/media.mjs +2 -2
  314. package/resources/x/profile.d.mts +60 -33
  315. package/resources/x/profile.d.mts.map +1 -1
  316. package/resources/x/profile.d.ts +60 -33
  317. package/resources/x/profile.d.ts.map +1 -1
  318. package/resources/x/profile.js +3 -3
  319. package/resources/x/profile.mjs +3 -3
  320. package/resources/x/spaces.d.mts +857 -0
  321. package/resources/x/spaces.d.mts.map +1 -0
  322. package/resources/x/spaces.d.ts +857 -0
  323. package/resources/x/spaces.d.ts.map +1 -0
  324. package/resources/x/spaces.js +58 -0
  325. package/resources/x/spaces.js.map +1 -0
  326. package/resources/x/spaces.mjs +54 -0
  327. package/resources/x/spaces.mjs.map +1 -0
  328. package/resources/x/tweets/index.d.mts +1 -1
  329. package/resources/x/tweets/index.d.mts.map +1 -1
  330. package/resources/x/tweets/index.d.ts +1 -1
  331. package/resources/x/tweets/index.d.ts.map +1 -1
  332. package/resources/x/tweets/index.js.map +1 -1
  333. package/resources/x/tweets/index.mjs.map +1 -1
  334. package/resources/x/tweets/like.d.mts +38 -20
  335. package/resources/x/tweets/like.d.mts.map +1 -1
  336. package/resources/x/tweets/like.d.ts +38 -20
  337. package/resources/x/tweets/like.d.ts.map +1 -1
  338. package/resources/x/tweets/like.js +2 -2
  339. package/resources/x/tweets/like.mjs +2 -2
  340. package/resources/x/tweets/retweet.d.mts +38 -20
  341. package/resources/x/tweets/retweet.d.mts.map +1 -1
  342. package/resources/x/tweets/retweet.d.ts +38 -20
  343. package/resources/x/tweets/retweet.d.ts.map +1 -1
  344. package/resources/x/tweets/retweet.js +2 -2
  345. package/resources/x/tweets/retweet.mjs +2 -2
  346. package/resources/x/tweets/tweets.d.mts +2639 -326
  347. package/resources/x/tweets/tweets.d.mts.map +1 -1
  348. package/resources/x/tweets/tweets.d.ts +2639 -326
  349. package/resources/x/tweets/tweets.d.ts.map +1 -1
  350. package/resources/x/tweets/tweets.js +147 -21
  351. package/resources/x/tweets/tweets.js.map +1 -1
  352. package/resources/x/tweets/tweets.mjs +147 -21
  353. package/resources/x/tweets/tweets.mjs.map +1 -1
  354. package/resources/x/users/follow.d.mts +38 -20
  355. package/resources/x/users/follow.d.mts.map +1 -1
  356. package/resources/x/users/follow.d.ts +38 -20
  357. package/resources/x/users/follow.d.ts.map +1 -1
  358. package/resources/x/users/follow.js +2 -2
  359. package/resources/x/users/follow.mjs +2 -2
  360. package/resources/x/users/index.d.mts +1 -1
  361. package/resources/x/users/index.d.mts.map +1 -1
  362. package/resources/x/users/index.d.ts +1 -1
  363. package/resources/x/users/index.d.ts.map +1 -1
  364. package/resources/x/users/index.js.map +1 -1
  365. package/resources/x/users/index.mjs.map +1 -1
  366. package/resources/x/users/users.d.mts +3068 -457
  367. package/resources/x/users/users.d.mts.map +1 -1
  368. package/resources/x/users/users.d.ts +3068 -457
  369. package/resources/x/users/users.d.ts.map +1 -1
  370. package/resources/x/users/users.js +205 -22
  371. package/resources/x/users/users.js.map +1 -1
  372. package/resources/x/users/users.mjs +205 -22
  373. package/resources/x/users/users.mjs.map +1 -1
  374. package/resources/x/write-actions.d.mts +13 -6
  375. package/resources/x/write-actions.d.mts.map +1 -1
  376. package/resources/x/write-actions.d.ts +13 -6
  377. package/resources/x/write-actions.d.ts.map +1 -1
  378. package/resources/x/write-actions.js +1 -1
  379. package/resources/x/write-actions.mjs +1 -1
  380. package/resources/x/x.d.mts +864 -27
  381. package/resources/x/x.d.mts.map +1 -1
  382. package/resources/x/x.d.ts +864 -27
  383. package/resources/x/x.d.ts.map +1 -1
  384. package/resources/x/x.js +78 -5
  385. package/resources/x/x.js.map +1 -1
  386. package/resources/x/x.mjs +80 -7
  387. package/resources/x/x.mjs.map +1 -1
  388. package/skills/x-twitter-scraper/SKILL.md +99 -344
  389. package/skills/x-twitter-scraper/metadata.json +2 -2
  390. package/skills/x-twitter-scraper/references/mcp-setup.md +12 -15
  391. package/skills/x-twitter-scraper/references/mcp-tools.md +105 -166
  392. package/skills/x-twitter-scraper/references/types-mcp-output-schemas.md +4 -4
  393. package/skills/x-twitter-scraper/references/types.md +0 -1
  394. package/skills/x-twitter-scraper/skill-card.md +5 -6
  395. package/skills/x-twitter-scraper/skillspector-report.md +6 -3
  396. package/skills/xquik-account-automation/LICENSE +21 -0
  397. package/skills/xquik-account-automation/SKILL.md +91 -0
  398. package/skills/xquik-social-research/SKILL.md +48 -55
  399. package/src/client.ts +47 -4
  400. package/src/core/streaming.ts +328 -0
  401. package/src/internal/decoders/line.ts +140 -0
  402. package/src/internal/parse.ts +9 -0
  403. package/src/resources/account.ts +41 -12
  404. package/src/resources/compose.ts +77 -21
  405. package/src/resources/credits.ts +19 -10
  406. package/src/resources/drafts.ts +13 -22
  407. package/src/resources/draws.ts +94 -36
  408. package/src/resources/events.ts +3225 -68
  409. package/src/resources/extractions.ts +512 -125
  410. package/src/resources/guest-wallets.ts +6 -5
  411. package/src/resources/index.ts +24 -1
  412. package/src/resources/monitors/index.ts +2 -0
  413. package/src/resources/monitors/keywords.ts +82 -14
  414. package/src/resources/monitors/monitors.ts +66 -14
  415. package/src/resources/radar.ts +32 -36
  416. package/src/resources/shared.ts +2227 -351
  417. package/src/resources/styles.ts +43 -27
  418. package/src/resources/subscribe.ts +1 -1
  419. package/src/resources/support/index.ts +1 -0
  420. package/src/resources/support/support.ts +2 -0
  421. package/src/resources/support/tickets.ts +38 -10
  422. package/src/resources/trends.ts +23 -5
  423. package/src/resources/webhooks.ts +109 -15
  424. package/src/resources/x/account-connection-attempts.ts +1 -1
  425. package/src/resources/x/account-connection-challenges.ts +39 -11
  426. package/src/resources/x/accounts.ts +46 -10
  427. package/src/resources/x/analysis.ts +3947 -0
  428. package/src/resources/x/bookmarks.ts +103 -9
  429. package/src/resources/x/broadcasts.ts +225 -0
  430. package/src/resources/x/communities/communities.ts +743 -141
  431. package/src/resources/x/communities/index.ts +9 -0
  432. package/src/resources/x/communities/join.ts +46 -23
  433. package/src/resources/x/communities/media.ts +251 -0
  434. package/src/resources/x/communities/tweets.ts +427 -20
  435. package/src/resources/x/dm.ts +334 -11
  436. package/src/resources/x/followers.ts +35 -3
  437. package/src/resources/x/index.ts +106 -1
  438. package/src/resources/x/jobs.ts +627 -0
  439. package/src/resources/x/lists.ts +1307 -28
  440. package/src/resources/x/media.ts +24 -12
  441. package/src/resources/x/profile.ts +60 -30
  442. package/src/resources/x/spaces.ts +1076 -0
  443. package/src/resources/x/tweets/index.ts +18 -0
  444. package/src/resources/x/tweets/like.ts +38 -18
  445. package/src/resources/x/tweets/retweet.ts +38 -18
  446. package/src/resources/x/tweets/tweets.ts +3695 -843
  447. package/src/resources/x/users/follow.ts +38 -18
  448. package/src/resources/x/users/index.ts +22 -0
  449. package/src/resources/x/users/users.ts +3687 -465
  450. package/src/resources/x/write-actions.ts +13 -5
  451. package/src/resources/x/x.ts +1227 -15
  452. package/src/streaming.ts +6 -0
  453. package/src/version.ts +1 -1
  454. package/streaming.d.mts +3 -0
  455. package/streaming.d.mts.map +1 -0
  456. package/streaming.d.ts +3 -0
  457. package/streaming.d.ts.map +1 -0
  458. package/streaming.js +9 -0
  459. package/streaming.js.map +1 -0
  460. package/streaming.mjs +6 -0
  461. package/streaming.mjs.map +1 -0
  462. package/version.d.mts +1 -1
  463. package/version.d.ts +1 -1
  464. package/version.js +1 -1
  465. package/version.mjs +1 -1
  466. package/skills/x-twitter-scraper/references/types-rest-api-vs-mcp-field-naming.md +0 -15
@@ -3,32 +3,58 @@ import * as Shared from "../shared.mjs";
3
3
  import { APIPromise } from "../../core/api-promise.mjs";
4
4
  import { RequestOptions } from "../../internal/request-options.mjs";
5
5
  /**
6
- * X List followers, members, and tweets
6
+ * X List search, details, followers, members, and tweets
7
7
  */
8
8
  export declare class Lists extends APIResource {
9
9
  /**
10
- * List followers of an X List
10
+ * Returns one public X List as its page on X shows it. Accepts the List ID or the
11
+ * URL-encoded List URL, such as x.com/i/lists/4143408. A private List answers 404
12
+ * list_not_found.
11
13
  *
12
14
  * @example
13
15
  * ```ts
14
- * const paginatedUsers =
15
- * await client.x.lists.retrieveFollowers('id');
16
+ * const list = await client.x.lists.retrieve('id');
16
17
  * ```
17
18
  */
18
- retrieveFollowers(id: string, query?: ListRetrieveFollowersParams | null | undefined, options?: RequestOptions): APIPromise<Shared.PaginatedUsers>;
19
+ retrieve(id: string, query?: ListRetrieveParams | null | undefined, options?: RequestOptions): APIPromise<ListRetrieveResponse>;
19
20
  /**
20
- * List members of an X List
21
+ * Returns a public List's followers with resumable or standard pagination. A
22
+ * private List answers 404 list_not_found.
21
23
  *
22
24
  * @example
23
25
  * ```ts
24
- * const paginatedUsers = await client.x.lists.retrieveMembers(
26
+ * const response = await client.x.lists.retrieveFollowers(
25
27
  * 'id',
26
28
  * );
27
29
  * ```
28
30
  */
29
- retrieveMembers(id: string, query?: ListRetrieveMembersParams | null | undefined, options?: RequestOptions): APIPromise<Shared.PaginatedUsers>;
31
+ retrieveFollowers(id: string, query?: ListRetrieveFollowersParams | null | undefined, options?: RequestOptions): APIPromise<ListRetrieveFollowersResponse>;
30
32
  /**
31
- * List tweets from an X List
33
+ * Returns a public List's members with resumable or standard pagination. A private
34
+ * List answers 404 list_not_found.
35
+ *
36
+ * @example
37
+ * ```ts
38
+ * const response = await client.x.lists.retrieveMembers('id');
39
+ * ```
40
+ */
41
+ retrieveMembers(id: string, query?: ListRetrieveMembersParams | null | undefined, options?: RequestOptions): APIPromise<ListRetrieveMembersResponse>;
42
+ /**
43
+ * Returns one page of public Lists with member counts, banners & owner profiles. X
44
+ * may rank the Lists differently per request. Pass next_cursor as cursor for the
45
+ * next page.
46
+ *
47
+ * @example
48
+ * ```ts
49
+ * const response = await client.x.lists.retrieveSearch({
50
+ * q: 'q',
51
+ * });
52
+ * ```
53
+ */
54
+ retrieveSearch(query: ListRetrieveSearchParams, options?: RequestOptions): APIPromise<ListRetrieveSearchResponse>;
55
+ /**
56
+ * Omit mode for resumable maximum coverage. Pass next_cursor unchanged. Standard
57
+ * keeps legacy pagination. A private List answers 404 list_not_found.
32
58
  *
33
59
  * @example
34
60
  * ```ts
@@ -39,15 +65,686 @@ export declare class Lists extends APIResource {
39
65
  */
40
66
  retrieveTweets(id: string, query?: ListRetrieveTweetsParams | null | undefined, options?: RequestOptions): APIPromise<Shared.PaginatedTweets>;
41
67
  }
68
+ export interface ListRetrieveResponse {
69
+ /**
70
+ * Public X List with its owner's public profile. Leaves out what X tells the
71
+ * reading account, such as whether it follows the List.
72
+ */
73
+ list: ListRetrieveResponse.List;
74
+ }
75
+ export declare namespace ListRetrieveResponse {
76
+ /**
77
+ * Public X List with its owner's public profile. Leaves out what X tells the
78
+ * reading account, such as whether it follows the List.
79
+ */
80
+ interface List {
81
+ /**
82
+ * Numeric ID of the List.
83
+ */
84
+ id: string;
85
+ /**
86
+ * Name the owner gave the List.
87
+ */
88
+ name: string;
89
+ /**
90
+ * URL of the banner the owner uploaded. Absent when the owner uploaded none.
91
+ */
92
+ bannerUrl?: string;
93
+ /**
94
+ * When the owner made the List.
95
+ */
96
+ createdAt?: string;
97
+ /**
98
+ * Banner the owner uploaded.
99
+ */
100
+ customBanner?: List.CustomBanner;
101
+ /**
102
+ * Banner X shows when the owner uploaded none. X picks it per reading account, so
103
+ * 2 calls can return different ones.
104
+ */
105
+ defaultBanner?: List.DefaultBanner;
106
+ /**
107
+ * About text of the List. Empty when the owner wrote none.
108
+ */
109
+ description?: string;
110
+ /**
111
+ * Avatar URLs of a few List members, which X may pick per request.
112
+ */
113
+ facepileUrls?: Array<string>;
114
+ /**
115
+ * Accounts on the List.
116
+ */
117
+ memberCount?: number;
118
+ /**
119
+ * Member count as X words it, such as 35 members.
120
+ */
121
+ membersContext?: string;
122
+ /**
123
+ * Public profile of the account that owns the List.
124
+ */
125
+ owner?: Shared.UserProfile;
126
+ /**
127
+ * Accounts that follow the List, which X calls followers.
128
+ */
129
+ subscriberCount?: number;
130
+ /**
131
+ * List page on x.com.
132
+ */
133
+ url?: string;
134
+ }
135
+ namespace List {
136
+ /**
137
+ * Banner the owner uploaded.
138
+ */
139
+ interface CustomBanner {
140
+ /**
141
+ * Banner image URL.
142
+ */
143
+ url: string;
144
+ /**
145
+ * Banner height in pixels.
146
+ */
147
+ height?: number;
148
+ /**
149
+ * Media ID of an uploaded banner.
150
+ */
151
+ mediaId?: string;
152
+ /**
153
+ * Stable media key of an uploaded banner.
154
+ */
155
+ mediaKey?: string;
156
+ /**
157
+ * Dominant colors of an uploaded banner and their shares.
158
+ */
159
+ palette?: Array<CustomBanner.Palette>;
160
+ /**
161
+ * Area X marks as the subject of the banner, in pixels.
162
+ */
163
+ salientRect?: CustomBanner.SalientRect;
164
+ /**
165
+ * Banner width in pixels.
166
+ */
167
+ width?: number;
168
+ }
169
+ namespace CustomBanner {
170
+ interface Palette {
171
+ /**
172
+ * Share of the banner
173
+ */
174
+ percentage?: number;
175
+ /**
176
+ * The color's red, green and blue values.
177
+ */
178
+ rgb?: Palette.Rgb;
179
+ }
180
+ namespace Palette {
181
+ /**
182
+ * The color's red, green and blue values.
183
+ */
184
+ interface Rgb {
185
+ blue?: number;
186
+ green?: number;
187
+ red?: number;
188
+ }
189
+ }
190
+ /**
191
+ * Area X marks as the subject of the banner, in pixels.
192
+ */
193
+ interface SalientRect {
194
+ /**
195
+ * Height of the marked area.
196
+ */
197
+ height?: number;
198
+ /**
199
+ * Pixels from the banner's left.
200
+ */
201
+ left?: number;
202
+ /**
203
+ * Pixels from the banner's top.
204
+ */
205
+ top?: number;
206
+ /**
207
+ * Width of the marked area.
208
+ */
209
+ width?: number;
210
+ }
211
+ }
212
+ /**
213
+ * Banner X shows when the owner uploaded none. X picks it per reading account, so
214
+ * 2 calls can return different ones.
215
+ */
216
+ interface DefaultBanner {
217
+ /**
218
+ * Banner image URL.
219
+ */
220
+ url: string;
221
+ /**
222
+ * Banner height in pixels.
223
+ */
224
+ height?: number;
225
+ /**
226
+ * Media ID of an uploaded banner.
227
+ */
228
+ mediaId?: string;
229
+ /**
230
+ * Stable media key of an uploaded banner.
231
+ */
232
+ mediaKey?: string;
233
+ /**
234
+ * Dominant colors of an uploaded banner and their shares.
235
+ */
236
+ palette?: Array<DefaultBanner.Palette>;
237
+ /**
238
+ * Area X marks as the subject of the banner, in pixels.
239
+ */
240
+ salientRect?: DefaultBanner.SalientRect;
241
+ /**
242
+ * Banner width in pixels.
243
+ */
244
+ width?: number;
245
+ }
246
+ namespace DefaultBanner {
247
+ interface Palette {
248
+ /**
249
+ * Share of the banner
250
+ */
251
+ percentage?: number;
252
+ /**
253
+ * The color's red, green and blue values.
254
+ */
255
+ rgb?: Palette.Rgb;
256
+ }
257
+ namespace Palette {
258
+ /**
259
+ * The color's red, green and blue values.
260
+ */
261
+ interface Rgb {
262
+ blue?: number;
263
+ green?: number;
264
+ red?: number;
265
+ }
266
+ }
267
+ /**
268
+ * Area X marks as the subject of the banner, in pixels.
269
+ */
270
+ interface SalientRect {
271
+ /**
272
+ * Height of the marked area.
273
+ */
274
+ height?: number;
275
+ /**
276
+ * Pixels from the banner's left.
277
+ */
278
+ left?: number;
279
+ /**
280
+ * Pixels from the banner's top.
281
+ */
282
+ top?: number;
283
+ /**
284
+ * Width of the marked area.
285
+ */
286
+ width?: number;
287
+ }
288
+ }
289
+ }
290
+ }
291
+ /**
292
+ * A standard or terminal maximum-coverage relationship page.
293
+ */
294
+ export type ListRetrieveFollowersResponse = Shared.PaginatedUsers | ListRetrieveFollowersResponse.UserListCoverageResponse;
295
+ export declare namespace ListRetrieveFollowersResponse {
296
+ /**
297
+ * Terminal relationship coverage response with diagnostics.
298
+ */
299
+ interface UserListCoverageResponse extends Omit<Shared.PaginatedUsers, 'has_next_page' | 'next_cursor'> {
300
+ /**
301
+ * Coverage evidence across parallel relationship strategies.
302
+ */
303
+ diagnostic: UserListCoverageResponse.Diagnostic;
304
+ has_next_page?: false;
305
+ next_cursor?: '';
306
+ }
307
+ namespace UserListCoverageResponse {
308
+ /**
309
+ * Coverage evidence across parallel relationship strategies.
310
+ */
311
+ interface Diagnostic {
312
+ /**
313
+ * True after all active strategies exhaust their sources. An empty read of the
314
+ * whole search window also ends its time slices.
315
+ */
316
+ complete: boolean;
317
+ /**
318
+ * Whole number from 0.
319
+ */
320
+ cursorFailureCount: number;
321
+ deadlineReached: boolean;
322
+ /**
323
+ * Whole number from 0.
324
+ */
325
+ duplicateCount: number;
326
+ /**
327
+ * Whole number from 0.
328
+ */
329
+ failedStrategyCount: number;
330
+ /**
331
+ * Whole number from 0.
332
+ */
333
+ malformedCount: number;
334
+ /**
335
+ * Whole number from 0.
336
+ */
337
+ pagesFetched: number;
338
+ /**
339
+ * True when credits or the requested limit reduce output.
340
+ */
341
+ responseTruncated: boolean;
342
+ resultLimitReached: boolean;
343
+ returnedUsers: number;
344
+ /**
345
+ * Whole number from 0.
346
+ */
347
+ stalledStrategyCount: number;
348
+ strategies: Array<Diagnostic.Strategy>;
349
+ strategyCount: number;
350
+ uniqueUsers: number;
351
+ }
352
+ namespace Diagnostic {
353
+ /**
354
+ * Result counts and stop reason for one relationship strategy.
355
+ */
356
+ interface Strategy {
357
+ /**
358
+ * Whole number from 0.
359
+ */
360
+ duplicateCount: number;
361
+ /**
362
+ * Whole number from 0.
363
+ */
364
+ pagesFetched: number;
365
+ /**
366
+ * Reason a coverage strategy stopped.
367
+ */
368
+ stopReason: 'cursor_failure' | 'deadline' | 'exhausted' | 'failed' | 'page_limit' | 'result_limit' | 'stalled';
369
+ strategy: number;
370
+ /**
371
+ * Whole number from 0.
372
+ */
373
+ uniqueAdded: number;
374
+ }
375
+ }
376
+ }
377
+ }
378
+ /**
379
+ * A standard or terminal maximum-coverage relationship page.
380
+ */
381
+ export type ListRetrieveMembersResponse = Shared.PaginatedUsers | ListRetrieveMembersResponse.UserListCoverageResponse;
382
+ export declare namespace ListRetrieveMembersResponse {
383
+ /**
384
+ * Terminal relationship coverage response with diagnostics.
385
+ */
386
+ interface UserListCoverageResponse extends Omit<Shared.PaginatedUsers, 'has_next_page' | 'next_cursor'> {
387
+ /**
388
+ * Coverage evidence across parallel relationship strategies.
389
+ */
390
+ diagnostic: UserListCoverageResponse.Diagnostic;
391
+ has_next_page?: false;
392
+ next_cursor?: '';
393
+ }
394
+ namespace UserListCoverageResponse {
395
+ /**
396
+ * Coverage evidence across parallel relationship strategies.
397
+ */
398
+ interface Diagnostic {
399
+ /**
400
+ * True after all active strategies exhaust their sources. An empty read of the
401
+ * whole search window also ends its time slices.
402
+ */
403
+ complete: boolean;
404
+ /**
405
+ * Whole number from 0.
406
+ */
407
+ cursorFailureCount: number;
408
+ deadlineReached: boolean;
409
+ /**
410
+ * Whole number from 0.
411
+ */
412
+ duplicateCount: number;
413
+ /**
414
+ * Whole number from 0.
415
+ */
416
+ failedStrategyCount: number;
417
+ /**
418
+ * Whole number from 0.
419
+ */
420
+ malformedCount: number;
421
+ /**
422
+ * Whole number from 0.
423
+ */
424
+ pagesFetched: number;
425
+ /**
426
+ * True when credits or the requested limit reduce output.
427
+ */
428
+ responseTruncated: boolean;
429
+ resultLimitReached: boolean;
430
+ returnedUsers: number;
431
+ /**
432
+ * Whole number from 0.
433
+ */
434
+ stalledStrategyCount: number;
435
+ strategies: Array<Diagnostic.Strategy>;
436
+ strategyCount: number;
437
+ uniqueUsers: number;
438
+ }
439
+ namespace Diagnostic {
440
+ /**
441
+ * Result counts and stop reason for one relationship strategy.
442
+ */
443
+ interface Strategy {
444
+ /**
445
+ * Whole number from 0.
446
+ */
447
+ duplicateCount: number;
448
+ /**
449
+ * Whole number from 0.
450
+ */
451
+ pagesFetched: number;
452
+ /**
453
+ * Reason a coverage strategy stopped.
454
+ */
455
+ stopReason: 'cursor_failure' | 'deadline' | 'exhausted' | 'failed' | 'page_limit' | 'result_limit' | 'stalled';
456
+ strategy: number;
457
+ /**
458
+ * Whole number from 0.
459
+ */
460
+ uniqueAdded: number;
461
+ }
462
+ }
463
+ }
464
+ }
465
+ /**
466
+ * One page of public X Lists. Follow next_cursor while the response reports more
467
+ * pages. Each returned List costs 1 credit.
468
+ */
469
+ export interface ListRetrieveSearchResponse {
470
+ has_next_page: boolean;
471
+ lists: Array<ListRetrieveSearchResponse.List>;
472
+ next_cursor: string;
473
+ }
474
+ export declare namespace ListRetrieveSearchResponse {
475
+ /**
476
+ * Public X List with its owner's public profile. Leaves out what X tells the
477
+ * reading account, such as whether it follows the List.
478
+ */
479
+ interface List {
480
+ /**
481
+ * Numeric ID of the List.
482
+ */
483
+ id: string;
484
+ /**
485
+ * Name the owner gave the List.
486
+ */
487
+ name: string;
488
+ /**
489
+ * URL of the banner the owner uploaded. Absent when the owner uploaded none.
490
+ */
491
+ bannerUrl?: string;
492
+ /**
493
+ * When the owner made the List.
494
+ */
495
+ createdAt?: string;
496
+ /**
497
+ * Banner the owner uploaded.
498
+ */
499
+ customBanner?: List.CustomBanner;
500
+ /**
501
+ * Banner X shows when the owner uploaded none. X picks it per reading account, so
502
+ * 2 calls can return different ones.
503
+ */
504
+ defaultBanner?: List.DefaultBanner;
505
+ /**
506
+ * About text of the List. Empty when the owner wrote none.
507
+ */
508
+ description?: string;
509
+ /**
510
+ * Avatar URLs of a few List members, which X may pick per request.
511
+ */
512
+ facepileUrls?: Array<string>;
513
+ /**
514
+ * Accounts on the List.
515
+ */
516
+ memberCount?: number;
517
+ /**
518
+ * Member count as X words it, such as 35 members.
519
+ */
520
+ membersContext?: string;
521
+ /**
522
+ * Public profile of the account that owns the List.
523
+ */
524
+ owner?: Shared.UserProfile;
525
+ /**
526
+ * Accounts that follow the List, which X calls followers.
527
+ */
528
+ subscriberCount?: number;
529
+ /**
530
+ * List page on x.com.
531
+ */
532
+ url?: string;
533
+ }
534
+ namespace List {
535
+ /**
536
+ * Banner the owner uploaded.
537
+ */
538
+ interface CustomBanner {
539
+ /**
540
+ * Banner image URL.
541
+ */
542
+ url: string;
543
+ /**
544
+ * Banner height in pixels.
545
+ */
546
+ height?: number;
547
+ /**
548
+ * Media ID of an uploaded banner.
549
+ */
550
+ mediaId?: string;
551
+ /**
552
+ * Stable media key of an uploaded banner.
553
+ */
554
+ mediaKey?: string;
555
+ /**
556
+ * Dominant colors of an uploaded banner and their shares.
557
+ */
558
+ palette?: Array<CustomBanner.Palette>;
559
+ /**
560
+ * Area X marks as the subject of the banner, in pixels.
561
+ */
562
+ salientRect?: CustomBanner.SalientRect;
563
+ /**
564
+ * Banner width in pixels.
565
+ */
566
+ width?: number;
567
+ }
568
+ namespace CustomBanner {
569
+ interface Palette {
570
+ /**
571
+ * Share of the banner
572
+ */
573
+ percentage?: number;
574
+ /**
575
+ * The color's red, green and blue values.
576
+ */
577
+ rgb?: Palette.Rgb;
578
+ }
579
+ namespace Palette {
580
+ /**
581
+ * The color's red, green and blue values.
582
+ */
583
+ interface Rgb {
584
+ blue?: number;
585
+ green?: number;
586
+ red?: number;
587
+ }
588
+ }
589
+ /**
590
+ * Area X marks as the subject of the banner, in pixels.
591
+ */
592
+ interface SalientRect {
593
+ /**
594
+ * Height of the marked area.
595
+ */
596
+ height?: number;
597
+ /**
598
+ * Pixels from the banner's left.
599
+ */
600
+ left?: number;
601
+ /**
602
+ * Pixels from the banner's top.
603
+ */
604
+ top?: number;
605
+ /**
606
+ * Width of the marked area.
607
+ */
608
+ width?: number;
609
+ }
610
+ }
611
+ /**
612
+ * Banner X shows when the owner uploaded none. X picks it per reading account, so
613
+ * 2 calls can return different ones.
614
+ */
615
+ interface DefaultBanner {
616
+ /**
617
+ * Banner image URL.
618
+ */
619
+ url: string;
620
+ /**
621
+ * Banner height in pixels.
622
+ */
623
+ height?: number;
624
+ /**
625
+ * Media ID of an uploaded banner.
626
+ */
627
+ mediaId?: string;
628
+ /**
629
+ * Stable media key of an uploaded banner.
630
+ */
631
+ mediaKey?: string;
632
+ /**
633
+ * Dominant colors of an uploaded banner and their shares.
634
+ */
635
+ palette?: Array<DefaultBanner.Palette>;
636
+ /**
637
+ * Area X marks as the subject of the banner, in pixels.
638
+ */
639
+ salientRect?: DefaultBanner.SalientRect;
640
+ /**
641
+ * Banner width in pixels.
642
+ */
643
+ width?: number;
644
+ }
645
+ namespace DefaultBanner {
646
+ interface Palette {
647
+ /**
648
+ * Share of the banner
649
+ */
650
+ percentage?: number;
651
+ /**
652
+ * The color's red, green and blue values.
653
+ */
654
+ rgb?: Palette.Rgb;
655
+ }
656
+ namespace Palette {
657
+ /**
658
+ * The color's red, green and blue values.
659
+ */
660
+ interface Rgb {
661
+ blue?: number;
662
+ green?: number;
663
+ red?: number;
664
+ }
665
+ }
666
+ /**
667
+ * Area X marks as the subject of the banner, in pixels.
668
+ */
669
+ interface SalientRect {
670
+ /**
671
+ * Height of the marked area.
672
+ */
673
+ height?: number;
674
+ /**
675
+ * Pixels from the banner's left.
676
+ */
677
+ left?: number;
678
+ /**
679
+ * Pixels from the banner's top.
680
+ */
681
+ top?: number;
682
+ /**
683
+ * Width of the marked area.
684
+ */
685
+ width?: number;
686
+ }
687
+ }
688
+ }
689
+ }
690
+ export interface ListRetrieveParams {
691
+ /**
692
+ * Fields to keep in each row, comma-separated. Use dots for nested fields, such as
693
+ * author.username. A list keeps the field in each item. Case & underscores do not
694
+ * matter. A row that lacks a field leaves it out. Cursors, counts & diagnostics
695
+ * always stay. An unknown name answers 400 unknown_field with the valid names,
696
+ * before any read. The price stays the same. SDK row types then hold only the
697
+ * named fields.
698
+ */
699
+ fields?: string;
700
+ /**
701
+ * Fields to drop from each row, comma-separated. It takes the same names as
702
+ * fields. With fields, it drops from the kept fields.
703
+ */
704
+ omit?: string;
705
+ }
42
706
  export interface ListRetrieveFollowersParams {
707
+ /**
708
+ * Legacy cursor alias. Prefer cursor.
709
+ */
710
+ after?: string;
43
711
  /**
44
712
  * Match any comma-separated or line-separated bio term, ignoring case.
45
713
  */
46
714
  bioContains?: string;
47
715
  /**
48
- * Pagination cursor for list followers
716
+ * Only return profiles X marks as blue verified. X marks many business &
717
+ * government accounts blue too. Use verifiedType for 1 badge type.
718
+ */
719
+ blueVerifiedOnly?: boolean;
720
+ /**
721
+ * Only return profiles that publish an email outside free webmail, such as Gmail.
722
+ */
723
+ businessEmailOnly?: boolean;
724
+ /**
725
+ * Cursor from the previous response. Existing unprefixed cursors keep legacy
726
+ * standard behavior. Pages can be empty before more rows; follow next_cursor. Also
727
+ * read as next_cursor, next_token, pagination_token or continuation_token.
49
728
  */
50
729
  cursor?: string;
730
+ /**
731
+ * Only return profiles with an email at one of these domains. Separate domains
732
+ * with commas. Subdomains match.
733
+ */
734
+ emailDomains?: string;
735
+ /**
736
+ * Fields to keep in each row, comma-separated. Use dots for nested fields, such as
737
+ * author.username. A list keeps the field in each item. Case & underscores do not
738
+ * matter. A row that lacks a field leaves it out. Cursors, counts & diagnostics
739
+ * always stay. An unknown name answers 400 unknown_field with the valid names,
740
+ * before any read. The price stays the same. SDK row types then hold only the
741
+ * named fields.
742
+ */
743
+ fields?: string;
744
+ /**
745
+ * Only return profiles that publish an email.
746
+ */
747
+ hasEmail?: boolean;
51
748
  /**
52
749
  * Only return profiles with a location.
53
750
  */
@@ -65,9 +762,16 @@ export interface ListRetrieveFollowersParams {
65
762
  */
66
763
  maxFollowers?: number;
67
764
  /**
68
- * Maximum following count.
765
+ * Profiles may follow at most this many accounts.
69
766
  */
70
767
  maxFollowing?: number;
768
+ /**
769
+ * Most profiles 1 request reads, kept or dropped by the filters. A filter that
770
+ * keeps few profiles reads up to 65 s a request without it. The request then
771
+ * answers the profiles it kept, the count it dropped & the cursor to read on. Each
772
+ * request of a cursor may send its own value. Automatic mode only.
773
+ */
774
+ maxScan?: number;
71
775
  /**
72
776
  * Maximum post count. maxPosts is also accepted.
73
777
  */
@@ -81,7 +785,7 @@ export interface ListRetrieveFollowersParams {
81
785
  */
82
786
  minFollowers?: number;
83
787
  /**
84
- * Minimum following count.
788
+ * Profiles must follow at least this many accounts.
85
789
  */
86
790
  minFollowing?: number;
87
791
  /**
@@ -89,9 +793,19 @@ export interface ListRetrieveFollowersParams {
89
793
  */
90
794
  minStatuses?: number;
91
795
  /**
92
- * Maximum user profiles requested from this page (20-200, default 200). Source,
93
- * filters, or credits can return fewer profiles. Keep requesting next_cursor while
94
- * has_next_page is true. Deprecated aliases remain accepted.
796
+ * Omit mode for resumable maximum coverage. Standard keeps legacy pagination.
797
+ * Coverage returns diagnostics once and rejects cursors.
798
+ */
799
+ mode?: 'standard' | 'coverage';
800
+ /**
801
+ * Fields to drop from each row, comma-separated. It takes the same names as
802
+ * fields. With fields, it drops from the kept fields.
803
+ */
804
+ omit?: string;
805
+ /**
806
+ * Up to 300 user profiles in automatic mode, 200 in standard. Sources can return
807
+ * fewer. Follow next_cursor for more pages. Aliases: limit, count, max_results,
808
+ * maxItems, max_items & per_page.
95
809
  */
96
810
  pageSize?: number;
97
811
  /**
@@ -108,14 +822,47 @@ export interface ListRetrieveFollowersParams {
108
822
  verifiedType?: string;
109
823
  }
110
824
  export interface ListRetrieveMembersParams {
825
+ /**
826
+ * Legacy cursor alias. Prefer cursor.
827
+ */
828
+ after?: string;
111
829
  /**
112
830
  * Match any comma-separated or line-separated bio term, ignoring case.
113
831
  */
114
832
  bioContains?: string;
115
833
  /**
116
- * Pagination cursor for list members
834
+ * Only return profiles X marks as blue verified. X marks many business &
835
+ * government accounts blue too. Use verifiedType for 1 badge type.
836
+ */
837
+ blueVerifiedOnly?: boolean;
838
+ /**
839
+ * Only return profiles that publish an email outside free webmail, such as Gmail.
840
+ */
841
+ businessEmailOnly?: boolean;
842
+ /**
843
+ * Cursor from the previous response. Existing unprefixed cursors keep legacy
844
+ * standard behavior. Pages can be empty before more rows; follow next_cursor. Also
845
+ * read as next_cursor, next_token, pagination_token or continuation_token.
117
846
  */
118
847
  cursor?: string;
848
+ /**
849
+ * Only return profiles with an email at one of these domains. Separate domains
850
+ * with commas. Subdomains match.
851
+ */
852
+ emailDomains?: string;
853
+ /**
854
+ * Fields to keep in each row, comma-separated. Use dots for nested fields, such as
855
+ * author.username. A list keeps the field in each item. Case & underscores do not
856
+ * matter. A row that lacks a field leaves it out. Cursors, counts & diagnostics
857
+ * always stay. An unknown name answers 400 unknown_field with the valid names,
858
+ * before any read. The price stays the same. SDK row types then hold only the
859
+ * named fields.
860
+ */
861
+ fields?: string;
862
+ /**
863
+ * Only return profiles that publish an email.
864
+ */
865
+ hasEmail?: boolean;
119
866
  /**
120
867
  * Only return profiles with a location.
121
868
  */
@@ -133,9 +880,16 @@ export interface ListRetrieveMembersParams {
133
880
  */
134
881
  maxFollowers?: number;
135
882
  /**
136
- * Maximum following count.
883
+ * Profiles may follow at most this many accounts.
137
884
  */
138
885
  maxFollowing?: number;
886
+ /**
887
+ * Most profiles 1 request reads, kept or dropped by the filters. A filter that
888
+ * keeps few profiles reads up to 65 s a request without it. The request then
889
+ * answers the profiles it kept, the count it dropped & the cursor to read on. Each
890
+ * request of a cursor may send its own value. Automatic mode only.
891
+ */
892
+ maxScan?: number;
139
893
  /**
140
894
  * Maximum post count. maxPosts is also accepted.
141
895
  */
@@ -149,7 +903,7 @@ export interface ListRetrieveMembersParams {
149
903
  */
150
904
  minFollowers?: number;
151
905
  /**
152
- * Minimum following count.
906
+ * Profiles must follow at least this many accounts.
153
907
  */
154
908
  minFollowing?: number;
155
909
  /**
@@ -157,7 +911,19 @@ export interface ListRetrieveMembersParams {
157
911
  */
158
912
  minStatuses?: number;
159
913
  /**
160
- * Members per page (20-200, default 20)
914
+ * Omit mode for resumable maximum coverage. Standard keeps legacy pagination.
915
+ * Coverage returns diagnostics once and rejects cursors.
916
+ */
917
+ mode?: 'standard' | 'coverage';
918
+ /**
919
+ * Fields to drop from each row, comma-separated. It takes the same names as
920
+ * fields. With fields, it drops from the kept fields.
921
+ */
922
+ omit?: string;
923
+ /**
924
+ * Up to 300 user profiles in automatic mode, 200 in standard. Sources can return
925
+ * fewer. Follow next_cursor for more pages. Aliases: limit, count, max_results,
926
+ * maxItems, max_items & per_page.
161
927
  */
162
928
  pageSize?: number;
163
929
  /**
@@ -173,31 +939,296 @@ export interface ListRetrieveMembersParams {
173
939
  */
174
940
  verifiedType?: string;
175
941
  }
942
+ export interface ListRetrieveSearchParams {
943
+ /**
944
+ * Keywords to find Lists by, such as a topic. Alias query.
945
+ */
946
+ q: string;
947
+ /**
948
+ * Pagination cursor for collection results. Also read as next_cursor, next_token,
949
+ * pagination_token or continuation_token.
950
+ */
951
+ cursor?: string;
952
+ /**
953
+ * Fields to keep in each row, comma-separated. Use dots for nested fields, such as
954
+ * author.username. A list keeps the field in each item. Case & underscores do not
955
+ * matter. A row that lacks a field leaves it out. Cursors, counts & diagnostics
956
+ * always stay. An unknown name answers 400 unknown_field with the valid names,
957
+ * before any read. The price stays the same. SDK row types then hold only the
958
+ * named fields.
959
+ */
960
+ fields?: string;
961
+ /**
962
+ * Fields to drop from each row, comma-separated. It takes the same names as
963
+ * fields. With fields, it drops from the kept fields.
964
+ */
965
+ omit?: string;
966
+ /**
967
+ * Items per page (1-100, default 20). Source, filters or credits can return fewer.
968
+ * Follow next_cursor for more pages. Aliases: limit, count, max_results, maxItems,
969
+ * max_items & per_page.
970
+ */
971
+ pageSize?: number;
972
+ }
176
973
  export interface ListRetrieveTweetsParams {
177
974
  /**
178
- * Pagination cursor for list tweets
975
+ * Raw advanced search query appended as-is.
976
+ */
977
+ advancedQuery?: string;
978
+ /**
979
+ * Legacy cursor alias. Prefer cursor.
980
+ */
981
+ after?: string;
982
+ /**
983
+ * Words or quoted phrases where any one can match. Separate with spaces, commas,
984
+ * or lines.
985
+ */
986
+ anyWords?: string;
987
+ /**
988
+ * Only return tweets from Blue-verified authors.
989
+ */
990
+ blueVerifiedOnly?: boolean;
991
+ /**
992
+ * Geo bounding box, e.g. -74.1 40.6 -73.9 40.8.
993
+ */
994
+ boundingBox?: string;
995
+ /**
996
+ * Keep only Tweets with this card type, such as poll2choice_text_only. Tweet
997
+ * search checks each Tweet's card.
998
+ */
999
+ cardName?: string;
1000
+ /**
1001
+ * Cashtags separated by spaces, commas, or lines.
1002
+ */
1003
+ cashtags?: string;
1004
+ /**
1005
+ * Conversation ID filter.
1006
+ */
1007
+ conversationId?: string;
1008
+ /**
1009
+ * Cursor from the previous response. Existing unprefixed cursors keep legacy
1010
+ * standard behavior. Pages can be empty before more rows; follow next_cursor. Also
1011
+ * read as next_cursor, next_token, pagination_token or continuation_token.
179
1012
  */
180
1013
  cursor?: string;
181
1014
  /**
182
- * Include replies (default false)
1015
+ * Match this literal phrase, including any hyphens.
1016
+ */
1017
+ exactPhrase?: string;
1018
+ /**
1019
+ * X search no longer supports excludeSource. A Tweet search with it answers 424 &
1020
+ * charges nothing.
1021
+ */
1022
+ excludeSource?: string;
1023
+ /**
1024
+ * Words or quoted phrases to exclude. Separate with spaces, commas, or lines.
1025
+ */
1026
+ excludeWords?: string;
1027
+ /**
1028
+ * Fields to keep in each row, comma-separated. Use dots for nested fields, such as
1029
+ * author.username. A list keeps the field in each item. Case & underscores do not
1030
+ * matter. A row that lacks a field leaves it out. Cursors, counts & diagnostics
1031
+ * always stay. An unknown name answers 400 unknown_field with the valid names,
1032
+ * before any read. The price stays the same. SDK row types then hold only the
1033
+ * named fields.
1034
+ */
1035
+ fields?: string;
1036
+ /**
1037
+ * Filter by author username.
1038
+ */
1039
+ fromUser?: string;
1040
+ /**
1041
+ * X search no longer supports geocode. A Tweet search with it answers 424 &
1042
+ * charges nothing.
1043
+ */
1044
+ geocode?: string;
1045
+ /**
1046
+ * Hashtags separated by spaces, commas, or lines.
1047
+ */
1048
+ hashtags?: string;
1049
+ /**
1050
+ * Include reply tweets unless replies specifies another mode.
183
1051
  */
184
1052
  includeReplies?: boolean;
185
1053
  /**
186
- * Maximum page items (1-100, default 20). Source, filters, or credits can reduce
187
- * results. Continue while has_next_page is true. Deprecated limit and count
188
- * aliases remain accepted.
1054
+ * Only replies to this tweet ID.
1055
+ */
1056
+ inReplyToTweetId?: string;
1057
+ /**
1058
+ * Words the Tweets must match, in X search syntax.
1059
+ */
1060
+ keywords?: string;
1061
+ /**
1062
+ * Filter by language. Alias `lang` is accepted.
1063
+ */
1064
+ language?: string;
1065
+ /**
1066
+ * Maximum likes threshold. maxLikes & max_likes also work.
1067
+ */
1068
+ maxFaves?: number;
1069
+ /**
1070
+ * Return Tweets at or below this ID.
1071
+ */
1072
+ maxId?: string;
1073
+ /**
1074
+ * Maximum quotes threshold.
1075
+ */
1076
+ maxQuotes?: number;
1077
+ /**
1078
+ * Maximum replies threshold.
1079
+ */
1080
+ maxReplies?: number;
1081
+ /**
1082
+ * Maximum retweets threshold.
1083
+ */
1084
+ maxRetweets?: number;
1085
+ /**
1086
+ * Filter media. Aliases: has_video, has_media.
1087
+ */
1088
+ mediaType?: 'images' | 'videos' | 'gifs' | 'media' | 'links' | 'none';
1089
+ /**
1090
+ * Filter tweets mentioning a username.
1091
+ */
1092
+ mentioning?: string;
1093
+ /**
1094
+ * Minimum bookmark count threshold.
1095
+ */
1096
+ minBookmarks?: number;
1097
+ /**
1098
+ * Minimum likes. Aliases: minFaves, min_likes, min_faves.
1099
+ */
1100
+ minLikes?: number;
1101
+ /**
1102
+ * Minimum quote count threshold.
1103
+ */
1104
+ minQuotes?: number;
1105
+ /**
1106
+ * Minimum replies threshold.
1107
+ */
1108
+ minReplies?: number;
1109
+ /**
1110
+ * Minimum retweets threshold.
1111
+ */
1112
+ minRetweets?: number;
1113
+ /**
1114
+ * Minimum view count threshold.
1115
+ */
1116
+ minViews?: number;
1117
+ /**
1118
+ * Omit mode for resumable maximum coverage. Standard keeps legacy pagination.
1119
+ * Coverage returns diagnostics once and rejects cursors.
1120
+ */
1121
+ mode?: 'standard' | 'coverage';
1122
+ /**
1123
+ * Only return native reposts.
1124
+ */
1125
+ nativeRetweets?: boolean;
1126
+ /**
1127
+ * Match a place name.
1128
+ */
1129
+ near?: string;
1130
+ /**
1131
+ * X no longer searches filter:news.
1132
+ */
1133
+ news?: boolean;
1134
+ /**
1135
+ * Fields to drop from each row, comma-separated. It takes the same names as
1136
+ * fields. With fields, it drops from the kept fields.
1137
+ */
1138
+ omit?: string;
1139
+ /**
1140
+ * Automatic pages accept 1-300 Tweets, standard pages 1-100. Default 20. Follow
1141
+ * next_cursor for more pages. Aliases: limit, count, max_results, maxItems,
1142
+ * max_items & per_page.
189
1143
  */
190
1144
  pageSize?: number;
191
1145
  /**
192
- * Unix timestamp - filter after
1146
+ * Search within a place ID.
1147
+ */
1148
+ place?: string;
1149
+ /**
1150
+ * Search within a country code.
1151
+ */
1152
+ placeCountry?: string;
1153
+ /**
1154
+ * Geo point radius, e.g. -73.99 40.73 25mi.
1155
+ */
1156
+ pointRadius?: string;
1157
+ /**
1158
+ * Only when the caller requests a quote mode.
1159
+ */
1160
+ quotes?: 'include' | 'exclude' | 'only';
1161
+ /**
1162
+ * Only quotes of this tweet ID.
1163
+ */
1164
+ quotesOfTweetId?: string;
1165
+ /**
1166
+ * Reply mode. Exclude keeps own-thread replies.
1167
+ */
1168
+ replies?: 'include' | 'exclude' | 'only';
1169
+ /**
1170
+ * Only when the caller requests a repost mode.
1171
+ */
1172
+ retweets?: 'include' | 'exclude' | 'only';
1173
+ /**
1174
+ * Only retweets of this tweet ID.
1175
+ */
1176
+ retweetsOfTweetId?: string;
1177
+ /**
1178
+ * Enable the safe-search filter.
1179
+ */
1180
+ safe?: boolean;
1181
+ /**
1182
+ * Start date in YYYY-MM-DD format, as a UTC day.
1183
+ */
1184
+ sinceDate?: string;
1185
+ /**
1186
+ * Return Tweets whose IDs exceed this ID.
1187
+ */
1188
+ sinceId?: string;
1189
+ /**
1190
+ * Inclusive ISO bound for Tweet creation time, such as 2026-09-25T19:20:41Z. Unix
1191
+ * seconds also work. A time without an offset is UTC.
193
1192
  */
194
1193
  sinceTime?: string;
195
1194
  /**
196
- * Unix timestamp - filter before
1195
+ * X search no longer supports source. A Tweet search with it answers 424 & charges
1196
+ * nothing.
1197
+ */
1198
+ source?: string;
1199
+ /**
1200
+ * Filter replies sent to a username.
1201
+ */
1202
+ toUser?: string;
1203
+ /**
1204
+ * End date in YYYY-MM-DD format, as a UTC day, inclusive, so its own posts count.
1205
+ */
1206
+ untilDate?: string;
1207
+ /**
1208
+ * Exclusive ISO bound for Tweet creation time. Unix seconds also work. A time
1209
+ * without an offset is UTC.
197
1210
  */
198
1211
  untilTime?: string;
1212
+ /**
1213
+ * URL substring or domain filter.
1214
+ */
1215
+ url?: string;
1216
+ /**
1217
+ * Only return tweets from verified authors.
1218
+ */
1219
+ verifiedOnly?: boolean;
1220
+ /**
1221
+ * X search no longer supports within. A Tweet search with it answers 424 & charges
1222
+ * nothing. Use near alone.
1223
+ */
1224
+ within?: string;
1225
+ /**
1226
+ * Keeps Tweets from a recent window, such as 90m or 7d. Use a whole number & s, m,
1227
+ * h or d.
1228
+ */
1229
+ withinTime?: string;
199
1230
  }
200
1231
  export declare namespace Lists {
201
- export { type ListRetrieveFollowersParams as ListRetrieveFollowersParams, type ListRetrieveMembersParams as ListRetrieveMembersParams, type ListRetrieveTweetsParams as ListRetrieveTweetsParams, };
1232
+ export { type ListRetrieveResponse as ListRetrieveResponse, type ListRetrieveFollowersResponse as ListRetrieveFollowersResponse, type ListRetrieveMembersResponse as ListRetrieveMembersResponse, type ListRetrieveSearchResponse as ListRetrieveSearchResponse, type ListRetrieveParams as ListRetrieveParams, type ListRetrieveFollowersParams as ListRetrieveFollowersParams, type ListRetrieveMembersParams as ListRetrieveMembersParams, type ListRetrieveSearchParams as ListRetrieveSearchParams, type ListRetrieveTweetsParams as ListRetrieveTweetsParams, };
202
1233
  }
203
1234
  //# sourceMappingURL=lists.d.mts.map