rettiwt-api 6.0.8 → 6.1.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.
- package/.github/ISSUE_TEMPLATE/bug-report.yml +57 -0
- package/.github/ISSUE_TEMPLATE/feature-request.yml +20 -0
- package/.github/ISSUE_TEMPLATE/question.yml +15 -0
- package/.github/PULL_REQUEST_TEMPLATE.md +32 -0
- package/.github/workflows/ci.yml +33 -0
- package/.nvmrc +1 -0
- package/README.md +30 -6
- package/dist/Rettiwt.d.ts +3 -0
- package/dist/Rettiwt.js +4 -0
- package/dist/Rettiwt.js.map +1 -1
- package/dist/cli.js +2 -0
- package/dist/cli.js.map +1 -1
- package/dist/collections/Extractors.d.ts +24 -0
- package/dist/collections/Extractors.js +14 -0
- package/dist/collections/Extractors.js.map +1 -1
- package/dist/collections/Groups.js +11 -0
- package/dist/collections/Groups.js.map +1 -1
- package/dist/collections/Requests.js +12 -0
- package/dist/collections/Requests.js.map +1 -1
- package/dist/commands/DirectMessage.d.ts +10 -0
- package/dist/commands/DirectMessage.js +57 -0
- package/dist/commands/DirectMessage.js.map +1 -0
- package/dist/commands/List.js +44 -3
- package/dist/commands/List.js.map +1 -1
- package/dist/commands/Tweet.js +29 -1
- package/dist/commands/Tweet.js.map +1 -1
- package/dist/commands/User.js +39 -1
- package/dist/commands/User.js.map +1 -1
- package/dist/enums/Data.d.ts +3 -1
- package/dist/enums/Data.js +2 -0
- package/dist/enums/Data.js.map +1 -1
- package/dist/enums/Resource.d.ts +11 -0
- package/dist/enums/Resource.js +12 -0
- package/dist/enums/Resource.js.map +1 -1
- package/dist/enums/raw/Analytics.d.ts +6 -3
- package/dist/enums/raw/Analytics.js +5 -2
- package/dist/enums/raw/Analytics.js.map +1 -1
- package/dist/index.d.ts +15 -0
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -1
- package/dist/models/args/FetchArgs.d.ts +9 -0
- package/dist/models/args/FetchArgs.js +16 -0
- package/dist/models/args/FetchArgs.js.map +1 -1
- package/dist/models/args/PostArgs.d.ts +1 -0
- package/dist/models/args/PostArgs.js +2 -0
- package/dist/models/args/PostArgs.js.map +1 -1
- package/dist/models/data/Analytics.d.ts +43 -0
- package/dist/models/data/Analytics.js +92 -0
- package/dist/models/data/Analytics.js.map +1 -0
- package/dist/models/data/Conversation.d.ts +93 -0
- package/dist/models/data/Conversation.js +293 -0
- package/dist/models/data/Conversation.js.map +1 -0
- package/dist/models/data/CursoredData.d.ts +2 -1
- package/dist/models/data/CursoredData.js +6 -1
- package/dist/models/data/CursoredData.js.map +1 -1
- package/dist/models/data/DirectMessage.d.ts +105 -0
- package/dist/models/data/DirectMessage.js +284 -0
- package/dist/models/data/DirectMessage.js.map +1 -0
- package/dist/models/data/Inbox.d.ts +44 -0
- package/dist/models/data/Inbox.js +106 -0
- package/dist/models/data/Inbox.js.map +1 -0
- package/dist/models/data/List.d.ts +20 -0
- package/dist/models/data/List.js +50 -1
- package/dist/models/data/List.js.map +1 -1
- package/dist/models/data/Tweet.d.ts +6 -6
- package/dist/models/data/Tweet.js +4 -2
- package/dist/models/data/Tweet.js.map +1 -1
- package/dist/models/data/User.d.ts +2 -0
- package/dist/models/data/User.js +6 -0
- package/dist/models/data/User.js.map +1 -1
- package/dist/requests/DirectMessage.d.ts +28 -0
- package/dist/requests/DirectMessage.js +149 -0
- package/dist/requests/DirectMessage.js.map +1 -0
- package/dist/requests/List.d.ts +10 -0
- package/dist/requests/List.js +52 -0
- package/dist/requests/List.js.map +1 -1
- package/dist/requests/Tweet.d.ts +8 -0
- package/dist/requests/Tweet.js +30 -0
- package/dist/requests/Tweet.js.map +1 -1
- package/dist/requests/User.d.ts +8 -1
- package/dist/requests/User.js +67 -8
- package/dist/requests/User.js.map +1 -1
- package/dist/services/public/DirectMessageService.d.ts +100 -0
- package/dist/services/public/DirectMessageService.js +143 -0
- package/dist/services/public/DirectMessageService.js.map +1 -0
- package/dist/services/public/FetcherService.d.ts +2 -2
- package/dist/services/public/FetcherService.js +2 -2
- package/dist/services/public/ListService.d.ts +85 -0
- package/dist/services/public/ListService.js +111 -0
- package/dist/services/public/ListService.js.map +1 -1
- package/dist/services/public/TweetService.d.ts +56 -0
- package/dist/services/public/TweetService.js +72 -0
- package/dist/services/public/TweetService.js.map +1 -1
- package/dist/services/public/UserService.d.ts +61 -2
- package/dist/services/public/UserService.js +89 -0
- package/dist/services/public/UserService.js.map +1 -1
- package/dist/types/args/FetchArgs.d.ts +69 -12
- package/dist/types/args/PostArgs.d.ts +29 -11
- package/dist/types/data/Analytics.d.ts +42 -0
- package/dist/types/data/Analytics.js +3 -0
- package/dist/types/data/Analytics.js.map +1 -0
- package/dist/types/data/Conversation.d.ts +32 -0
- package/dist/types/data/Conversation.js +3 -0
- package/dist/types/data/Conversation.js.map +1 -0
- package/dist/types/data/CursoredData.d.ts +4 -1
- package/dist/types/data/DirectMessage.d.ts +25 -0
- package/dist/types/data/DirectMessage.js +3 -0
- package/dist/types/data/DirectMessage.js.map +1 -0
- package/dist/types/data/Inbox.d.ts +18 -0
- package/dist/types/data/Inbox.js +3 -0
- package/dist/types/data/Inbox.js.map +1 -0
- package/dist/types/data/List.d.ts +5 -1
- package/dist/types/data/Tweet.d.ts +6 -6
- package/dist/types/data/User.d.ts +4 -0
- package/dist/types/raw/base/Analytic.d.ts +6 -1
- package/dist/types/raw/base/Message.d.ts +16 -0
- package/dist/types/raw/base/Message.js +4 -0
- package/dist/types/raw/base/Message.js.map +1 -0
- package/dist/types/raw/base/Tweet.d.ts +6 -6
- package/dist/types/raw/base/User.d.ts +2 -1
- package/dist/types/raw/composite/TimelineList.d.ts +9 -0
- package/dist/types/raw/composite/TimelineList.js +3 -0
- package/dist/types/raw/composite/TimelineList.js.map +1 -0
- package/dist/types/raw/dm/Conversation.d.ts +55 -0
- package/dist/types/raw/dm/Conversation.js +4 -0
- package/dist/types/raw/dm/Conversation.js.map +1 -0
- package/dist/types/raw/dm/InboxInitial.d.ts +137 -0
- package/dist/types/raw/dm/InboxInitial.js +4 -0
- package/dist/types/raw/dm/InboxInitial.js.map +1 -0
- package/dist/types/raw/dm/InboxTimeline.d.ts +287 -0
- package/dist/types/raw/dm/InboxTimeline.js +4 -0
- package/dist/types/raw/dm/InboxTimeline.js.map +1 -0
- package/dist/types/raw/dm/UserUpdates.d.ts +41 -0
- package/dist/types/raw/dm/UserUpdates.js +4 -0
- package/dist/types/raw/dm/UserUpdates.js.map +1 -0
- package/dist/types/raw/list/AddMember.d.ts +151 -0
- package/dist/types/raw/list/AddMember.js +4 -0
- package/dist/types/raw/list/AddMember.js.map +1 -0
- package/dist/types/raw/list/Details.d.ts +44 -13
- package/dist/types/raw/list/RemoveMember.d.ts +150 -0
- package/dist/types/raw/list/RemoveMember.js +4 -0
- package/dist/types/raw/list/RemoveMember.js.map +1 -0
- package/dist/types/raw/tweet/Bookmark.d.ts +12 -0
- package/dist/types/raw/tweet/Bookmark.js +4 -0
- package/dist/types/raw/tweet/Bookmark.js.map +1 -0
- package/dist/types/raw/tweet/Unbookmark.d.ts +11 -0
- package/dist/types/raw/tweet/Unbookmark.js +4 -0
- package/dist/types/raw/tweet/Unbookmark.js.map +1 -0
- package/dist/types/raw/user/Analytics.d.ts +6 -18
- package/dist/types/raw/user/Analytics.js +0 -1
- package/dist/types/raw/user/Analytics.js.map +1 -1
- package/dist/types/raw/user/Lists.d.ts +319 -0
- package/dist/types/raw/user/Lists.js +4 -0
- package/dist/types/raw/user/Lists.js.map +1 -0
- package/eslint.config.mjs +1 -1
- package/package.json +11 -6
- package/playground/.env.example +1 -0
- package/playground/README.md +53 -0
- package/playground/index.js +15 -0
- package/playground/package.json +15 -0
- package/src/Rettiwt.ts +5 -0
- package/src/cli.ts +2 -0
- package/src/collections/Extractors.ts +29 -0
- package/src/collections/Groups.ts +11 -0
- package/src/collections/Requests.ts +20 -0
- package/src/commands/DirectMessage.ts +62 -0
- package/src/commands/List.ts +44 -3
- package/src/commands/Tweet.ts +29 -1
- package/src/commands/User.ts +65 -1
- package/src/enums/Data.ts +2 -0
- package/src/enums/Resource.ts +13 -0
- package/src/enums/raw/Analytics.ts +5 -2
- package/src/index.ts +15 -0
- package/src/models/args/FetchArgs.ts +17 -0
- package/src/models/args/PostArgs.ts +2 -0
- package/src/models/data/Analytics.ts +97 -0
- package/src/models/data/Conversation.ts +344 -0
- package/src/models/data/CursoredData.ts +7 -2
- package/src/models/data/DirectMessage.ts +335 -0
- package/src/models/data/Inbox.ts +124 -0
- package/src/models/data/List.ts +60 -1
- package/src/models/data/Tweet.ts +10 -8
- package/src/models/data/User.ts +6 -0
- package/src/requests/DirectMessage.ts +233 -0
- package/src/requests/List.ts +58 -0
- package/src/requests/Tweet.ts +32 -0
- package/src/requests/User.ts +70 -7
- package/src/services/public/DirectMessageService.ts +159 -0
- package/src/services/public/FetcherService.ts +2 -2
- package/src/services/public/ListService.ts +127 -0
- package/src/services/public/TweetService.ts +82 -0
- package/src/services/public/UserService.ts +110 -2
- package/src/types/args/FetchArgs.ts +77 -12
- package/src/types/args/PostArgs.ts +31 -11
- package/src/types/data/Analytics.ts +58 -0
- package/src/types/data/Conversation.ts +44 -0
- package/src/types/data/CursoredData.ts +4 -1
- package/src/types/data/DirectMessage.ts +33 -0
- package/src/types/data/Inbox.ts +23 -0
- package/src/types/data/List.ts +7 -1
- package/src/types/data/Tweet.ts +6 -6
- package/src/types/data/User.ts +6 -0
- package/src/types/raw/base/Analytic.ts +7 -1
- package/src/types/raw/base/Message.ts +22 -0
- package/src/types/raw/base/Tweet.ts +6 -6
- package/src/types/raw/base/User.ts +2 -1
- package/src/types/raw/composite/TimelineList.ts +10 -0
- package/src/types/raw/dm/Conversation.ts +59 -0
- package/src/types/raw/dm/InboxInitial.ts +155 -0
- package/src/types/raw/dm/InboxTimeline.ts +301 -0
- package/src/types/raw/dm/UserUpdates.ts +46 -0
- package/src/types/raw/list/AddMember.ts +175 -0
- package/src/types/raw/list/Details.ts +52 -13
- package/src/types/raw/list/RemoveMember.ts +174 -0
- package/src/types/raw/tweet/Bookmark.ts +14 -0
- package/src/types/raw/tweet/Unbookmark.ts +14 -0
- package/src/types/raw/user/Analytics.ts +6 -22
- package/src/types/raw/user/Lists.ts +378 -0
- package/tsconfig.json +1 -1
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
|
|
3
|
+
import { Users, Conversations } from './InboxInitial';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* The raw data received when fetching the inbox timeline.
|
|
7
|
+
*
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
export interface IInboxTimelineResponse {
|
|
11
|
+
inbox_timeline: InboxTimeline;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
interface InboxTimeline {
|
|
15
|
+
status: 'HAS_MORE' | 'AT_END';
|
|
16
|
+
min_entry_id: string;
|
|
17
|
+
entries: TimelineEntry[];
|
|
18
|
+
users: Users;
|
|
19
|
+
conversations: Conversations;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
type TimelineEntry =
|
|
23
|
+
| { trust_conversation: TrustConversation }
|
|
24
|
+
| { message: TimelineMessage }
|
|
25
|
+
| { participants_leave: ParticipantsLeave };
|
|
26
|
+
|
|
27
|
+
interface TrustConversation {
|
|
28
|
+
id: string;
|
|
29
|
+
time: string;
|
|
30
|
+
affects_sort: boolean;
|
|
31
|
+
request_id: string;
|
|
32
|
+
conversation_id: string;
|
|
33
|
+
reason: string; // e.g., "accept"
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export interface TimelineMessage {
|
|
37
|
+
id: string;
|
|
38
|
+
time: string;
|
|
39
|
+
affects_sort: boolean;
|
|
40
|
+
request_id: string;
|
|
41
|
+
conversation_id: string;
|
|
42
|
+
message_data: TimelineMessageData;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
interface TimelineMessageData {
|
|
46
|
+
id: string;
|
|
47
|
+
time: string;
|
|
48
|
+
recipient_id?: string;
|
|
49
|
+
sender_id: string;
|
|
50
|
+
conversation_id?: string;
|
|
51
|
+
text: string;
|
|
52
|
+
edit_count: number;
|
|
53
|
+
entities?: MessageEntities;
|
|
54
|
+
reply_data?: ReplyData;
|
|
55
|
+
attachment?: MessageAttachment;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
interface MessageEntities {
|
|
59
|
+
hashtags: any[];
|
|
60
|
+
symbols: any[];
|
|
61
|
+
user_mentions: UserMention[];
|
|
62
|
+
urls: UrlEntity[];
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
interface UserMention {
|
|
66
|
+
screen_name: string;
|
|
67
|
+
name: string;
|
|
68
|
+
id: number;
|
|
69
|
+
id_str: string;
|
|
70
|
+
indices: [number, number];
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
interface UrlEntity {
|
|
74
|
+
url: string;
|
|
75
|
+
expanded_url: string;
|
|
76
|
+
display_url: string;
|
|
77
|
+
indices: [number, number];
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
interface ReplyData {
|
|
81
|
+
id: string;
|
|
82
|
+
time: string;
|
|
83
|
+
recipient_id: string;
|
|
84
|
+
sender_id: string;
|
|
85
|
+
text: string;
|
|
86
|
+
edit_count: number;
|
|
87
|
+
entities?: MessageEntities;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
interface MessageAttachment {
|
|
91
|
+
card?: CardAttachment;
|
|
92
|
+
tweet?: TweetAttachment;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
interface CardAttachment {
|
|
96
|
+
name: string;
|
|
97
|
+
url: string;
|
|
98
|
+
card_type_url: string;
|
|
99
|
+
binding_values: CardBindingValues;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
interface CardBindingValues {
|
|
103
|
+
vanity_url?: StringValue;
|
|
104
|
+
domain?: StringValue;
|
|
105
|
+
title?: StringValue;
|
|
106
|
+
description?: StringValue;
|
|
107
|
+
thumbnail_image_small?: ImageValue;
|
|
108
|
+
thumbnail_image?: ImageValue;
|
|
109
|
+
thumbnail_image_large?: ImageValue;
|
|
110
|
+
thumbnail_image_x_large?: ImageValue;
|
|
111
|
+
thumbnail_image_color?: ImageColorValue;
|
|
112
|
+
thumbnail_image_original?: ImageValue;
|
|
113
|
+
summary_photo_image_small?: ImageValue;
|
|
114
|
+
summary_photo_image?: ImageValue;
|
|
115
|
+
summary_photo_image_large?: ImageValue;
|
|
116
|
+
summary_photo_image_x_large?: ImageValue;
|
|
117
|
+
summary_photo_image_color?: ImageColorValue;
|
|
118
|
+
summary_photo_image_original?: ImageValue;
|
|
119
|
+
photo_image_full_size_small?: ImageValue;
|
|
120
|
+
photo_image_full_size?: ImageValue;
|
|
121
|
+
photo_image_full_size_large?: ImageValue;
|
|
122
|
+
photo_image_full_size_x_large?: ImageValue;
|
|
123
|
+
photo_image_full_size_color?: ImageColorValue;
|
|
124
|
+
photo_image_full_size_original?: ImageValue;
|
|
125
|
+
card_url?: StringValue;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
interface StringValue {
|
|
129
|
+
type: 'STRING';
|
|
130
|
+
string_value: string;
|
|
131
|
+
scribe_key?: string;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
interface ImageValue {
|
|
135
|
+
type: 'IMAGE';
|
|
136
|
+
image_value: {
|
|
137
|
+
url: string;
|
|
138
|
+
width: number;
|
|
139
|
+
height: number;
|
|
140
|
+
alt: string | null;
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
interface ImageColorValue {
|
|
145
|
+
type: 'IMAGE_COLOR';
|
|
146
|
+
image_color_value: {
|
|
147
|
+
palette: ColorPalette[];
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
interface ColorPalette {
|
|
152
|
+
percentage: number;
|
|
153
|
+
rgb: {
|
|
154
|
+
red: number;
|
|
155
|
+
green: number;
|
|
156
|
+
blue: number;
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
interface TweetAttachment {
|
|
161
|
+
id: string;
|
|
162
|
+
url: string;
|
|
163
|
+
display_url: string;
|
|
164
|
+
expanded_url: string;
|
|
165
|
+
indices: [number, number];
|
|
166
|
+
status: TwitterStatus;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
interface TwitterStatus {
|
|
170
|
+
created_at: string;
|
|
171
|
+
id: number;
|
|
172
|
+
id_str: string;
|
|
173
|
+
full_text: string;
|
|
174
|
+
truncated: boolean;
|
|
175
|
+
display_text_range: [number, number];
|
|
176
|
+
entities: MessageEntities;
|
|
177
|
+
source: string;
|
|
178
|
+
in_reply_to_status_id: number | null;
|
|
179
|
+
in_reply_to_status_id_str: string | null;
|
|
180
|
+
in_reply_to_user_id: number | null;
|
|
181
|
+
in_reply_to_user_id_str: string | null;
|
|
182
|
+
in_reply_to_screen_name: string | null;
|
|
183
|
+
user: TwitterUser;
|
|
184
|
+
geo: any;
|
|
185
|
+
coordinates: any;
|
|
186
|
+
place: any;
|
|
187
|
+
contributors: any;
|
|
188
|
+
is_quote_status: boolean;
|
|
189
|
+
retweet_count: number;
|
|
190
|
+
favorite_count: number;
|
|
191
|
+
reply_count: number;
|
|
192
|
+
quote_count: number;
|
|
193
|
+
favorited: boolean;
|
|
194
|
+
retweeted: boolean;
|
|
195
|
+
lang: string;
|
|
196
|
+
supplemental_language: string | null;
|
|
197
|
+
ext: TwitterExtensions;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
interface TwitterUser {
|
|
201
|
+
id: number;
|
|
202
|
+
id_str: string;
|
|
203
|
+
name: string;
|
|
204
|
+
screen_name: string;
|
|
205
|
+
location: string;
|
|
206
|
+
description: string;
|
|
207
|
+
url: string;
|
|
208
|
+
entities: UserEntityInfo;
|
|
209
|
+
protected: boolean;
|
|
210
|
+
followers_count: number;
|
|
211
|
+
fast_followers_count: number;
|
|
212
|
+
normal_followers_count: number;
|
|
213
|
+
friends_count: number;
|
|
214
|
+
listed_count: number;
|
|
215
|
+
created_at: string;
|
|
216
|
+
favourites_count: number;
|
|
217
|
+
utc_offset: any;
|
|
218
|
+
time_zone: any;
|
|
219
|
+
geo_enabled: boolean;
|
|
220
|
+
verified: boolean;
|
|
221
|
+
statuses_count: number;
|
|
222
|
+
media_count: number;
|
|
223
|
+
lang: any;
|
|
224
|
+
contributors_enabled: boolean;
|
|
225
|
+
is_translator: boolean;
|
|
226
|
+
is_translation_enabled: boolean;
|
|
227
|
+
profile_background_color: string;
|
|
228
|
+
profile_background_image_url: string | null;
|
|
229
|
+
profile_background_image_url_https: string | null;
|
|
230
|
+
profile_background_tile: boolean;
|
|
231
|
+
profile_image_url: string;
|
|
232
|
+
profile_image_url_https: string;
|
|
233
|
+
profile_banner_url: string;
|
|
234
|
+
profile_link_color: string;
|
|
235
|
+
profile_sidebar_border_color: string;
|
|
236
|
+
profile_sidebar_fill_color: string;
|
|
237
|
+
profile_text_color: string;
|
|
238
|
+
profile_use_background_image: boolean;
|
|
239
|
+
default_profile: boolean;
|
|
240
|
+
default_profile_image: boolean;
|
|
241
|
+
pinned_tweet_ids: number[];
|
|
242
|
+
pinned_tweet_ids_str: string[];
|
|
243
|
+
has_custom_timelines: boolean;
|
|
244
|
+
can_dm: any;
|
|
245
|
+
can_media_tag: boolean;
|
|
246
|
+
following: boolean;
|
|
247
|
+
follow_request_sent: boolean;
|
|
248
|
+
notifications: boolean;
|
|
249
|
+
muting: any;
|
|
250
|
+
blocking: boolean;
|
|
251
|
+
blocked_by: boolean;
|
|
252
|
+
want_retweets: boolean;
|
|
253
|
+
advertiser_account_type: string;
|
|
254
|
+
advertiser_account_service_levels: any[];
|
|
255
|
+
business_profile_state: string;
|
|
256
|
+
translator_type: string;
|
|
257
|
+
withheld_in_countries: any[];
|
|
258
|
+
followed_by: boolean;
|
|
259
|
+
ext: TwitterExtensions;
|
|
260
|
+
require_some_consent: boolean;
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
interface UserEntityInfo {
|
|
264
|
+
url: {
|
|
265
|
+
urls: UrlEntity[];
|
|
266
|
+
};
|
|
267
|
+
description: {
|
|
268
|
+
urls: UrlEntity[];
|
|
269
|
+
};
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
interface TwitterExtensions {
|
|
273
|
+
businessAffiliationsLabel?: {
|
|
274
|
+
r: { ok: any };
|
|
275
|
+
ttl: number;
|
|
276
|
+
};
|
|
277
|
+
superFollowMetadata?: {
|
|
278
|
+
r: { ok: any };
|
|
279
|
+
ttl: number;
|
|
280
|
+
};
|
|
281
|
+
parodyCommentaryFanLabel?: {
|
|
282
|
+
r: { ok: string };
|
|
283
|
+
ttl: number;
|
|
284
|
+
};
|
|
285
|
+
highlightedLabel?: {
|
|
286
|
+
r: { ok: any };
|
|
287
|
+
ttl: number;
|
|
288
|
+
};
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
interface ParticipantsLeave {
|
|
292
|
+
id: string;
|
|
293
|
+
time: string;
|
|
294
|
+
affects_sort: boolean;
|
|
295
|
+
conversation_id: string;
|
|
296
|
+
participants: ParticipantInfo[];
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
interface ParticipantInfo {
|
|
300
|
+
user_id: string;
|
|
301
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
|
|
3
|
+
import { Users, Conversations, InboxInitialState } from './InboxInitial';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* The raw data received when fetching user updates from the DM system.
|
|
7
|
+
* The response structure varies based on query parameters.
|
|
8
|
+
*
|
|
9
|
+
* @public
|
|
10
|
+
*/
|
|
11
|
+
export interface IUserUpdatesResponse {
|
|
12
|
+
user_events?: UserEvents;
|
|
13
|
+
inbox_initial_state?: InboxInitialState;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* User events can have different structures based on the request type:
|
|
18
|
+
* - With active_conversation_id + cursor: Full data with users and conversations
|
|
19
|
+
* - Without active_conversation_id and cursor: Same as inbox initial (see IInboxInitialResponse)
|
|
20
|
+
* - With cursor only: Minimal data with just event IDs and cursor
|
|
21
|
+
*/
|
|
22
|
+
type UserEvents = UserEventsWithData | UserEventsMinimal;
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Full user events data returned when requesting with active_conversation_id and cursor.
|
|
26
|
+
* Used for conversation-specific updates with user and conversation context.
|
|
27
|
+
*/
|
|
28
|
+
interface UserEventsWithData {
|
|
29
|
+
cursor: string;
|
|
30
|
+
last_seen_event_id: string;
|
|
31
|
+
trusted_last_seen_event_id: string;
|
|
32
|
+
untrusted_last_seen_event_id: string;
|
|
33
|
+
users: Users;
|
|
34
|
+
conversations: Conversations;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Minimal user events data returned when requesting with cursor only (no active_conversation_id).
|
|
39
|
+
* Used for lightweight polling of event state without full data.
|
|
40
|
+
*/
|
|
41
|
+
interface UserEventsMinimal {
|
|
42
|
+
cursor: string;
|
|
43
|
+
last_seen_event_id: string;
|
|
44
|
+
trusted_last_seen_event_id: string;
|
|
45
|
+
untrusted_last_seen_event_id: string;
|
|
46
|
+
}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* The raw data received after adding a member to a tweet list.
|
|
5
|
+
*
|
|
6
|
+
* @public
|
|
7
|
+
*/
|
|
8
|
+
export interface IListMemberAddResponse {
|
|
9
|
+
data: Data;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export interface Data {
|
|
13
|
+
list: List;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export interface List {
|
|
17
|
+
created_at: number;
|
|
18
|
+
default_banner_media: DefaultBannerMedia;
|
|
19
|
+
default_banner_media_results: DefaultBannerMediaResults;
|
|
20
|
+
description: string;
|
|
21
|
+
facepile_urls: any[];
|
|
22
|
+
following: boolean;
|
|
23
|
+
id: string;
|
|
24
|
+
id_str: string;
|
|
25
|
+
is_member: boolean;
|
|
26
|
+
member_count: number;
|
|
27
|
+
members_context: string;
|
|
28
|
+
mode: string;
|
|
29
|
+
muting: boolean;
|
|
30
|
+
name: string;
|
|
31
|
+
pinning: boolean;
|
|
32
|
+
subscriber_count: number;
|
|
33
|
+
user_results: UserResults;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export interface DefaultBannerMedia {
|
|
37
|
+
media_info: MediaInfo;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export interface MediaInfo {
|
|
41
|
+
original_img_url: string;
|
|
42
|
+
original_img_width: number;
|
|
43
|
+
original_img_height: number;
|
|
44
|
+
salient_rect: SalientRect;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export interface SalientRect {
|
|
48
|
+
left: number;
|
|
49
|
+
top: number;
|
|
50
|
+
width: number;
|
|
51
|
+
height: number;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export interface DefaultBannerMediaResults {
|
|
55
|
+
result: Result;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export interface Result {
|
|
59
|
+
id: string;
|
|
60
|
+
media_key: string;
|
|
61
|
+
media_id: string;
|
|
62
|
+
media_info: MediaInfo2;
|
|
63
|
+
__typename: string;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export interface MediaInfo2 {
|
|
67
|
+
__typename: string;
|
|
68
|
+
original_img_height: number;
|
|
69
|
+
original_img_width: number;
|
|
70
|
+
original_img_url: string;
|
|
71
|
+
salient_rect: SalientRect2;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export interface SalientRect2 {
|
|
75
|
+
height: number;
|
|
76
|
+
left: number;
|
|
77
|
+
top: number;
|
|
78
|
+
width: number;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export interface UserResults {
|
|
82
|
+
result: Result2;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export interface Result2 {
|
|
86
|
+
__typename: string;
|
|
87
|
+
id: string;
|
|
88
|
+
rest_id: string;
|
|
89
|
+
affiliates_highlighted_label: AffiliatesHighlightedLabel;
|
|
90
|
+
avatar: Avatar;
|
|
91
|
+
core: Core;
|
|
92
|
+
dm_permissions: DmPermissions;
|
|
93
|
+
has_graduated_access: boolean;
|
|
94
|
+
is_blue_verified: boolean;
|
|
95
|
+
legacy: Legacy;
|
|
96
|
+
location: Location;
|
|
97
|
+
media_permissions: MediaPermissions;
|
|
98
|
+
parody_commentary_fan_label: string;
|
|
99
|
+
profile_image_shape: string;
|
|
100
|
+
privacy: Privacy;
|
|
101
|
+
relationship_perspectives: RelationshipPerspectives;
|
|
102
|
+
tipjar_settings: TipjarSettings;
|
|
103
|
+
verification: Verification;
|
|
104
|
+
verified_phone_status: boolean;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
export interface AffiliatesHighlightedLabel {}
|
|
108
|
+
|
|
109
|
+
export interface Avatar {
|
|
110
|
+
image_url: string;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
export interface Core {
|
|
114
|
+
created_at: string;
|
|
115
|
+
name: string;
|
|
116
|
+
screen_name: string;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
export interface DmPermissions {
|
|
120
|
+
can_dm: boolean;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
export interface Legacy {
|
|
124
|
+
default_profile: boolean;
|
|
125
|
+
default_profile_image: boolean;
|
|
126
|
+
description: string;
|
|
127
|
+
entities: Entities;
|
|
128
|
+
fast_followers_count: number;
|
|
129
|
+
favourites_count: number;
|
|
130
|
+
followers_count: number;
|
|
131
|
+
friends_count: number;
|
|
132
|
+
has_custom_timelines: boolean;
|
|
133
|
+
is_translator: boolean;
|
|
134
|
+
listed_count: number;
|
|
135
|
+
media_count: number;
|
|
136
|
+
needs_phone_verification: boolean;
|
|
137
|
+
normal_followers_count: number;
|
|
138
|
+
pinned_tweet_ids_str: any[];
|
|
139
|
+
possibly_sensitive: boolean;
|
|
140
|
+
profile_interstitial_type: string;
|
|
141
|
+
statuses_count: number;
|
|
142
|
+
translator_type: string;
|
|
143
|
+
want_retweets: boolean;
|
|
144
|
+
withheld_in_countries: any[];
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
export interface Entities {
|
|
148
|
+
description: Description;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
export interface Description {
|
|
152
|
+
urls: any[];
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
export interface Location {
|
|
156
|
+
location: string;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
export interface MediaPermissions {
|
|
160
|
+
can_media_tag: boolean;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
export interface Privacy {
|
|
164
|
+
protected: boolean;
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
export interface RelationshipPerspectives {
|
|
168
|
+
following: boolean;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
export interface TipjarSettings {}
|
|
172
|
+
|
|
173
|
+
export interface Verification {
|
|
174
|
+
verified: boolean;
|
|
175
|
+
}
|
|
@@ -18,19 +18,20 @@ interface List {
|
|
|
18
18
|
default_banner_media: DefaultBannerMedia;
|
|
19
19
|
default_banner_media_results: DefaultBannerMediaResults;
|
|
20
20
|
description: string;
|
|
21
|
+
facepile_urls: string[];
|
|
22
|
+
followers_context: string;
|
|
21
23
|
following: boolean;
|
|
22
24
|
id: string;
|
|
23
25
|
id_str: string;
|
|
24
26
|
is_member: boolean;
|
|
25
27
|
member_count: number;
|
|
28
|
+
members_context: string;
|
|
26
29
|
mode: string;
|
|
27
30
|
muting: boolean;
|
|
28
31
|
name: string;
|
|
32
|
+
pinning: boolean;
|
|
29
33
|
subscriber_count: number;
|
|
30
34
|
user_results: UserResults;
|
|
31
|
-
facepile_urls: string[];
|
|
32
|
-
followers_context: string;
|
|
33
|
-
members_context: string;
|
|
34
35
|
}
|
|
35
36
|
|
|
36
37
|
interface DefaultBannerMedia {
|
|
@@ -87,19 +88,40 @@ interface Result2 {
|
|
|
87
88
|
id: string;
|
|
88
89
|
rest_id: string;
|
|
89
90
|
affiliates_highlighted_label: AffiliatesHighlightedLabel;
|
|
91
|
+
avatar: Avatar;
|
|
92
|
+
core: Core;
|
|
93
|
+
dm_permissions: DmPermissions;
|
|
90
94
|
has_graduated_access: boolean;
|
|
91
95
|
is_blue_verified: boolean;
|
|
92
|
-
profile_image_shape: string;
|
|
93
96
|
legacy: Legacy;
|
|
97
|
+
location: Location;
|
|
98
|
+
media_permissions: MediaPermissions;
|
|
99
|
+
parody_commentary_fan_label: string;
|
|
100
|
+
profile_image_shape: string;
|
|
101
|
+
privacy: Privacy;
|
|
102
|
+
relationship_perspectives: RelationshipPerspectives;
|
|
103
|
+
tipjar_settings: TipjarSettings;
|
|
104
|
+
verification: Verification;
|
|
94
105
|
verified_phone_status: boolean;
|
|
95
106
|
}
|
|
96
107
|
|
|
97
108
|
interface AffiliatesHighlightedLabel {}
|
|
98
109
|
|
|
99
|
-
interface
|
|
100
|
-
|
|
101
|
-
|
|
110
|
+
interface Avatar {
|
|
111
|
+
image_url: string;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
interface Core {
|
|
102
115
|
created_at: string;
|
|
116
|
+
name: string;
|
|
117
|
+
screen_name: string;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
interface DmPermissions {
|
|
121
|
+
can_dm: boolean;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
interface Legacy {
|
|
103
125
|
default_profile: boolean;
|
|
104
126
|
default_profile_image: boolean;
|
|
105
127
|
description: string;
|
|
@@ -111,19 +133,14 @@ interface Legacy {
|
|
|
111
133
|
has_custom_timelines: boolean;
|
|
112
134
|
is_translator: boolean;
|
|
113
135
|
listed_count: number;
|
|
114
|
-
location: string;
|
|
115
136
|
media_count: number;
|
|
116
|
-
name: string;
|
|
117
137
|
normal_followers_count: number;
|
|
118
|
-
pinned_tweet_ids_str:
|
|
138
|
+
pinned_tweet_ids_str: string[];
|
|
119
139
|
possibly_sensitive: boolean;
|
|
120
140
|
profile_banner_url: string;
|
|
121
|
-
profile_image_url_https: string;
|
|
122
141
|
profile_interstitial_type: string;
|
|
123
|
-
screen_name: string;
|
|
124
142
|
statuses_count: number;
|
|
125
143
|
translator_type: string;
|
|
126
|
-
verified: boolean;
|
|
127
144
|
want_retweets: boolean;
|
|
128
145
|
withheld_in_countries: any[];
|
|
129
146
|
}
|
|
@@ -135,3 +152,25 @@ interface Entities {
|
|
|
135
152
|
interface Description {
|
|
136
153
|
urls: any[];
|
|
137
154
|
}
|
|
155
|
+
|
|
156
|
+
interface Location {
|
|
157
|
+
location: string;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
interface MediaPermissions {
|
|
161
|
+
can_media_tag: boolean;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
interface Privacy {
|
|
165
|
+
protected: boolean;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
interface RelationshipPerspectives {
|
|
169
|
+
following: boolean;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
interface TipjarSettings {}
|
|
173
|
+
|
|
174
|
+
interface Verification {
|
|
175
|
+
verified: boolean;
|
|
176
|
+
}
|