Variable TimelineFeedMediaSchemaConst
TimelineFeedMediaSchema: Struct<
{
carousel_media: optionalKey<
$Array<
Struct<
{
pk: decodeTo<
String,
Union<readonly [Number, String]>,
never,
never,
>;
},
>,
>,
>;
code: String;
id: String;
injected: optionalKey<
NullOr<
Struct<
{
ad_id: optionalKey<
decodeTo<String, Union<readonly [Number, String]>, never, never>,
>;
},
>,
>,
>;
inventory_source: optionalKey<String>;
logging_info_token: optionalKey<String>;
media_type: Number;
mezql_token: optionalKey<String>;
pk: optionalKey<
decodeTo<String, Union<readonly [Number, String]>, never, never>,
>;
product_type: optionalKey<String>;
taken_at: optionalKey<Number>;
user: optionalKey<
Struct<
{
pk: decodeTo<String, Union<readonly [Number, String]>, never, never>;
username: String;
},
>,
>;
},
> = ...
The wire forms the library models: one media's identity and author, and one entry of
feed_items— a post (media_or_ad), an Explore story (explore_storywith its own media), the "You're all caught up" line (end_of_feed_demarcator), the Threads block (threads_in_feed_unit) or the suggested-reels block (clips_netego). The interfaces above describe the whole answer for callers; a caller that needs a page checked reads it with these schemas. The list is an open union: an entry of any other kind is kept as the explicit TimelineFeedUnknownItem, so it neither fails the page nor disappears, while a known kind whose body does not decode fails.