igpapi — Instagram private API Simulator for Node.js (API reference) 4.14.0
    Preparing search index...

    Interface DirectThreadItems

    The item lists of DirectThreadScreen: the lists of items its handle holds.

    interface DirectThreadItems {
        media: readonly (
            | {
                data: {
                    height: number;
                    media_type: 1;
                    pk: string;
                    url: string;
                    width: number;
                };
            } & Readonly<
                Omit<
                    Pick<
                        {
                            height: number;
                            media_type: 1;
                            pk: string;
                            url: string;
                            width: number;
                        },
                        never,
                    >,
                    never,
                >,
            > & {
                toJSON: () => {
                    height: number;
                    media_type: 1;
                    pk: string;
                    url: string;
                    width: number;
                };
            } & {
                id: "DirectPhoto";
                kind: "item";
                origin: AssembledHandle<
                    "DirectThread",
                    "screen",
                    {
                        media: readonly (
                            | {
                                height: number;
                                media_type: 1;
                                pk: string;
                                url: string;
                                width: number;
                            }
                            | {
                                height: number;
                                media_type: 2;
                                pk: string;
                                url: string;
                                width: number;
                            }
                            | {
                                media_type: 8;
                                pk: string;
                                slides: readonly { media_type: ...; pk: ...; url: ... }[];
                            }
                        )[];
                        messages: readonly {
                            client_context?: string;
                            command_count?: number;
                            edit_count?: number;
                            item_id: string;
                            item_type: string;
                            media?: | {
                                height: number;
                                media_type: 1;
                                pk: string;
                                url: string;
                                width: number;
                            }
                            | {
                                height: number;
                                media_type: 2;
                                pk: string;
                                url: string;
                                width: number;
                            }
                            | { media_type: 8; pk: string; slides: readonly (...)[] };
                            message_ephemeral_lifetime_ms?: string;
                            text?: string;
                            timestamp: string;
                            user_id: string;
                        }[];
                        thread: {
                            is_group: boolean;
                            muted?: boolean;
                            thread_id: string;
                            thread_title: string;
                            thread_v2_id?: string;
                        };
                        users: readonly {
                            fbid_v2?: string;
                            full_name: string;
                            pk: string;
                            username: string;
                        }[];
                    },
                    DirectThreadActions,
                    DirectThreadItems,
                    ScreenHandle,
                    "required",
                    true,
                    never,
                    AndroidScreens,
                >;
            } & ScreenBoundActions<DirectPhotoItemActions, Record<never, never>> & {} & {} & {
                raw: unknown;
            } & {
                pipe: {
                    <A>(this: A): A;
                    <A, B = never>(this: A, ab: (_: A) => B): B;
                    <A, B = never, C = never>(this: A, ab: (_: A) => B, bc: (_: B) => C): C;
                    <A, B = never, C = never, D = never>(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                    ): D;
                    <A, B = never, C = never, D = never, E = never>(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                    ): E;
                    <A, B = never, C = never, D = never, E = never, F = never>(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                    ): F;
                    <A, B = never, C = never, D = never, E = never, F = never, G = never>(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                    ): G;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                    ): H;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                    ): I;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                    ): J;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                    ): K;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                    ): L;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                    ): M;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                    ): N;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                    ): O;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                    ): P;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                    ): Q;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                        R = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                        qr: (_: Q) => R,
                    ): R;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                        R = never,
                        S = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                        qr: (_: Q) => R,
                        rs: (_: R) => S,
                    ): S;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                        R = never,
                        S = never,
                        T = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                        qr: (_: Q) => R,
                        rs: (_: R) => S,
                        st: (_: S) => T,
                    ): T;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                        R = never,
                        S = never,
                        T = never,
                        U = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                        qr: (_: Q) => R,
                        rs: (_: R) => S,
                        st: (_: S) => T,
                        tu: (_: T) => U,
                    ): U;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                        R = never,
                        S = never,
                        T = never,
                        U = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                        qr: (_: Q) => R,
                        rs: (_: R) => S,
                        st: (_: S) => T,
                        tu: (_: T) => U,
                    ): U;
                };
            } & ScreenItemIdentityOf<
                ScreenItemDefinition<
                    "DirectPhoto",
                    {
                        height: number;
                        media_type: 1;
                        pk: string;
                        url: string;
                        width: number;
                    },
                    {
                        height: number;
                        media_type: 1;
                        pk: string;
                        url: string;
                        width: number;
                    },
                    Record<never, never>,
                    never,
                    never,
                    DirectPhotoItemActions,
                    undefined,
                    never,
                    never,
                >,
                "pk",
            >
            | {
                data: {
                    height: number;
                    media_type: 2;
                    pk: string;
                    url: string;
                    width: number;
                };
            } & Readonly<
                Omit<
                    Pick<
                        {
                            height: number;
                            media_type: 2;
                            pk: string;
                            url: string;
                            width: number;
                        },
                        never,
                    >,
                    never,
                >,
            > & {
                toJSON: () => {
                    height: number;
                    media_type: 2;
                    pk: string;
                    url: string;
                    width: number;
                };
            } & {
                id: "DirectVideo";
                kind: "item";
                origin: AssembledHandle<
                    "DirectThread",
                    "screen",
                    {
                        media: readonly (
                            | {
                                height: number;
                                media_type: 1;
                                pk: string;
                                url: string;
                                width: number;
                            }
                            | {
                                height: number;
                                media_type: 2;
                                pk: string;
                                url: string;
                                width: number;
                            }
                            | {
                                media_type: 8;
                                pk: string;
                                slides: readonly { media_type: ...; pk: ...; url: ... }[];
                            }
                        )[];
                        messages: readonly {
                            client_context?: string;
                            command_count?: number;
                            edit_count?: number;
                            item_id: string;
                            item_type: string;
                            media?: | {
                                height: number;
                                media_type: 1;
                                pk: string;
                                url: string;
                                width: number;
                            }
                            | {
                                height: number;
                                media_type: 2;
                                pk: string;
                                url: string;
                                width: number;
                            }
                            | { media_type: 8; pk: string; slides: readonly (...)[] };
                            message_ephemeral_lifetime_ms?: string;
                            text?: string;
                            timestamp: string;
                            user_id: string;
                        }[];
                        thread: {
                            is_group: boolean;
                            muted?: boolean;
                            thread_id: string;
                            thread_title: string;
                            thread_v2_id?: string;
                        };
                        users: readonly {
                            fbid_v2?: string;
                            full_name: string;
                            pk: string;
                            username: string;
                        }[];
                    },
                    DirectThreadActions,
                    DirectThreadItems,
                    ScreenHandle,
                    "required",
                    true,
                    never,
                    AndroidScreens,
                >;
            } & ScreenBoundActions<DirectVideoItemActions, Record<never, never>> & {} & {} & {
                raw: unknown;
            } & {
                pipe: {
                    <A>(this: A): A;
                    <A, B = never>(this: A, ab: (_: A) => B): B;
                    <A, B = never, C = never>(this: A, ab: (_: A) => B, bc: (_: B) => C): C;
                    <A, B = never, C = never, D = never>(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                    ): D;
                    <A, B = never, C = never, D = never, E = never>(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                    ): E;
                    <A, B = never, C = never, D = never, E = never, F = never>(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                    ): F;
                    <A, B = never, C = never, D = never, E = never, F = never, G = never>(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                    ): G;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                    ): H;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                    ): I;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                    ): J;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                    ): K;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                    ): L;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                    ): M;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                    ): N;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                    ): O;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                    ): P;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                    ): Q;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                        R = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                        qr: (_: Q) => R,
                    ): R;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                        R = never,
                        S = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                        qr: (_: Q) => R,
                        rs: (_: R) => S,
                    ): S;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                        R = never,
                        S = never,
                        T = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                        qr: (_: Q) => R,
                        rs: (_: R) => S,
                        st: (_: S) => T,
                    ): T;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                        R = never,
                        S = never,
                        T = never,
                        U = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                        qr: (_: Q) => R,
                        rs: (_: R) => S,
                        st: (_: S) => T,
                        tu: (_: T) => U,
                    ): U;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                        R = never,
                        S = never,
                        T = never,
                        U = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                        qr: (_: Q) => R,
                        rs: (_: R) => S,
                        st: (_: S) => T,
                        tu: (_: T) => U,
                    ): U;
                };
            } & ScreenItemIdentityOf<
                ScreenItemDefinition<
                    "DirectVideo",
                    {
                        height: number;
                        media_type: 2;
                        pk: string;
                        url: string;
                        width: number;
                    },
                    {
                        height: number;
                        media_type: 2;
                        pk: string;
                        url: string;
                        width: number;
                    },
                    Record<never, never>,
                    never,
                    never,
                    DirectVideoItemActions,
                    undefined,
                    never,
                    never,
                >,
                "pk",
            >
            | {
                data: {
                    media_type: 8;
                    pk: string;
                    slides: readonly { media_type: 1 | 2; pk: string; url: string }[];
                };
            } & Readonly<
                Omit<
                    Pick<
                        {
                            media_type: 8;
                            pk: string;
                            slides: readonly { media_type: 1
                            | 2; pk: string; url: string }[];
                        },
                        never,
                    >,
                    never,
                >,
            > & {
                toJSON: () => {
                    media_type: 8;
                    pk: string;
                    slides: readonly { media_type: 1
                    | 2; pk: string; url: string }[];
                };
            } & {
                id: "DirectCarousel";
                kind: "item";
                origin: AssembledHandle<
                    "DirectThread",
                    "screen",
                    {
                        media: readonly (
                            | {
                                height: number;
                                media_type: 1;
                                pk: string;
                                url: string;
                                width: number;
                            }
                            | {
                                height: number;
                                media_type: 2;
                                pk: string;
                                url: string;
                                width: number;
                            }
                            | {
                                media_type: 8;
                                pk: string;
                                slides: readonly { media_type: ...; pk: ...; url: ... }[];
                            }
                        )[];
                        messages: readonly {
                            client_context?: string;
                            command_count?: number;
                            edit_count?: number;
                            item_id: string;
                            item_type: string;
                            media?: | {
                                height: number;
                                media_type: 1;
                                pk: string;
                                url: string;
                                width: number;
                            }
                            | {
                                height: number;
                                media_type: 2;
                                pk: string;
                                url: string;
                                width: number;
                            }
                            | { media_type: 8; pk: string; slides: readonly (...)[] };
                            message_ephemeral_lifetime_ms?: string;
                            text?: string;
                            timestamp: string;
                            user_id: string;
                        }[];
                        thread: {
                            is_group: boolean;
                            muted?: boolean;
                            thread_id: string;
                            thread_title: string;
                            thread_v2_id?: string;
                        };
                        users: readonly {
                            fbid_v2?: string;
                            full_name: string;
                            pk: string;
                            username: string;
                        }[];
                    },
                    DirectThreadActions,
                    DirectThreadItems,
                    ScreenHandle,
                    "required",
                    true,
                    never,
                    AndroidScreens,
                >;
            } & ScreenBoundActions<DirectCarouselItemActions, Record<never, never>> & {} & {} & {
                raw: unknown;
            } & {
                pipe: {
                    <A>(this: A): A;
                    <A, B = never>(this: A, ab: (_: A) => B): B;
                    <A, B = never, C = never>(this: A, ab: (_: A) => B, bc: (_: B) => C): C;
                    <A, B = never, C = never, D = never>(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                    ): D;
                    <A, B = never, C = never, D = never, E = never>(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                    ): E;
                    <A, B = never, C = never, D = never, E = never, F = never>(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                    ): F;
                    <A, B = never, C = never, D = never, E = never, F = never, G = never>(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                    ): G;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                    ): H;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                    ): I;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                    ): J;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                    ): K;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                    ): L;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                    ): M;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                    ): N;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                    ): O;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                    ): P;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                    ): Q;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                        R = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                        qr: (_: Q) => R,
                    ): R;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                        R = never,
                        S = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                        qr: (_: Q) => R,
                        rs: (_: R) => S,
                    ): S;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                        R = never,
                        S = never,
                        T = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                        qr: (_: Q) => R,
                        rs: (_: R) => S,
                        st: (_: S) => T,
                    ): T;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                        R = never,
                        S = never,
                        T = never,
                        U = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                        qr: (_: Q) => R,
                        rs: (_: R) => S,
                        st: (_: S) => T,
                        tu: (_: T) => U,
                    ): U;
                    <
                        A,
                        B = never,
                        C = never,
                        D = never,
                        E = never,
                        F = never,
                        G = never,
                        H = never,
                        I = never,
                        J = never,
                        K = never,
                        L = never,
                        M = never,
                        N = never,
                        O = never,
                        P = never,
                        Q = never,
                        R = never,
                        S = never,
                        T = never,
                        U = never,
                    >(
                        this: A,
                        ab: (_: A) => B,
                        bc: (_: B) => C,
                        cd: (_: C) => D,
                        de: (_: D) => E,
                        ef: (_: E) => F,
                        fg: (_: F) => G,
                        gh: (_: G) => H,
                        hi: (_: H) => I,
                        ij: (_: I) => J,
                        jk: (_: J) => K,
                        kl: (_: K) => L,
                        lm: (_: L) => M,
                        mn: (_: M) => N,
                        no: (_: N) => O,
                        op: (_: O) => P,
                        pq: (_: P) => Q,
                        qr: (_: Q) => R,
                        rs: (_: R) => S,
                        st: (_: S) => T,
                        tu: (_: T) => U,
                    ): U;
                };
            } & ScreenItemIdentityOf<
                ScreenItemDefinition<
                    "DirectCarousel",
                    {
                        media_type: 8;
                        pk: string;
                        slides: readonly { media_type: 1
                        | 2; pk: string; url: string }[];
                    },
                    {
                        media_type: 8;
                        pk: string;
                        slides: readonly { media_type: 1
                        | 2; pk: string; url: string }[];
                    },
                    Record<never, never>,
                    never,
                    never,
                    DirectCarouselItemActions,
                    undefined,
                    never,
                    never,
                >,
                "pk",
            >
        )[];
        messages: readonly ScreenListItem<
            {
                at: "messages";
                item: ScreenItemDefinition<
                    "DirectThreadMessage",
                    {
                        client_context?: string;
                        command_count?: number;
                        edit_count?: number;
                        item_id: string;
                        item_type: string;
                        media?: | {
                            height: number;
                            media_type: 1;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            height: number;
                            media_type: 2;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            media_type: 8;
                            pk: string;
                            slides: readonly { media_type: 1
                            | 2; pk: string; url: string }[];
                        };
                        message_ephemeral_lifetime_ms?: string;
                        text?: string;
                        timestamp: string;
                        user_id: string;
                    },
                    {
                        client_context?: string;
                        command_count?: number;
                        edit_count?: number;
                        item_id: string;
                        item_type: string;
                        media?: | {
                            height: number;
                            media_type: 1;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            height: number;
                            media_type: 2;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            media_type: 8;
                            pk: string;
                            slides: readonly { media_type: 1
                            | 2; pk: string; url: string }[];
                        };
                        message_ephemeral_lifetime_ms?: string;
                        text?: string;
                        timestamp: string;
                        user_id: string;
                    },
                    DirectThreadMessageState,
                    never,
                    never,
                    DirectThreadMessageItemActions,
                    | {
                        has_messages: boolean;
                        is_group: false;
                        ordinal_reserved?: boolean;
                        participants: readonly {
                            fbid_v2?: string;
                            full_name: string;
                            pk: string;
                            username: string;
                        }[];
                        peer_user_fbid?: string;
                        peer_user_id?: string;
                        send_attribution?: | "inbox"
                        | "inbox_new_message"
                        | "message_button"
                        | "direct_thread_creation_omnipicker";
                        thread_id: string;
                        thread_title: string;
                        thread_v2_id?: string;
                    }
                    | {
                        has_messages: boolean;
                        is_group: true;
                        lead_user_id?: string;
                        ordinal_reserved?: boolean;
                        participants: readonly {
                            fbid_v2?: string;
                            full_name: string;
                            pk: string;
                            username: string;
                        }[];
                        send_attribution?: | "inbox"
                        | "inbox_new_message"
                        | "message_button"
                        | "direct_thread_creation_omnipicker";
                        thread_id: string;
                        thread_title: string;
                        thread_v2_id?: string;
                    },
                    never,
                    "DirectDoodleEditor",
                >;
                key: "item_id";
                source: ScreenItemNodes;
            },
            AssembledHandle<
                "DirectThread",
                "screen",
                {
                    media: readonly (
                        | {
                            height: number;
                            media_type: 1;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            height: number;
                            media_type: 2;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            media_type: 8;
                            pk: string;
                            slides: readonly { media_type: 1
                            | 2; pk: string; url: string }[];
                        }
                    )[];
                    messages: readonly {
                        client_context?: string;
                        command_count?: number;
                        edit_count?: number;
                        item_id: string;
                        item_type: string;
                        media?: | {
                            height: number;
                            media_type: 1;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            height: number;
                            media_type: 2;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            media_type: 8;
                            pk: string;
                            slides: readonly {
                                media_type: (...)
                                | (...);
                                pk: string;
                                url: string;
                            }[];
                        };
                        message_ephemeral_lifetime_ms?: string;
                        text?: string;
                        timestamp: string;
                        user_id: string;
                    }[];
                    thread: {
                        is_group: boolean;
                        muted?: boolean;
                        thread_id: string;
                        thread_title: string;
                        thread_v2_id?: string;
                    };
                    users: readonly {
                        fbid_v2?: string;
                        full_name: string;
                        pk: string;
                        username: string;
                    }[];
                },
                DirectThreadActions,
                DirectThreadItems,
                ScreenHandle,
                "required",
                true,
                never,
                AndroidScreens,
            >,
        >[];
        participants: readonly ScreenListItem<
            {
                at: "users";
                item: ScreenItemDefinition<
                    "DirectThreadParticipant",
                    { fbid_v2?: string; full_name: string; pk: string; username: string },
                    { fbid_v2?: string; full_name: string; pk: string; username: string },
                    DirectThreadParticipantState,
                    never,
                    never,
                    DirectThreadParticipantItemActions,

                        | {
                            has_messages: boolean;
                            is_group: false;
                            ordinal_reserved?: boolean;
                            participants: readonly {
                                fbid_v2?: string;
                                full_name: string;
                                pk: string;
                                username: string;
                            }[];
                            peer_user_fbid?: string;
                            peer_user_id?: string;
                            send_attribution?: | "inbox"
                            | "inbox_new_message"
                            | "message_button"
                            | "direct_thread_creation_omnipicker";
                            thread_id: string;
                            thread_title: string;
                            thread_v2_id?: string;
                        }
                        | {
                            has_messages: boolean;
                            is_group: true;
                            lead_user_id?: string;
                            ordinal_reserved?: boolean;
                            participants: readonly {
                                fbid_v2?: string;
                                full_name: string;
                                pk: string;
                                username: string;
                            }[];
                            send_attribution?: | "inbox"
                            | "inbox_new_message"
                            | "message_button"
                            | "direct_thread_creation_omnipicker";
                            thread_id: string;
                            thread_title: string;
                            thread_v2_id?: string;
                        },
                    never,
                    never,
                >;
                key: "pk";
                source: ScreenItemNodes;
            },
            AssembledHandle<
                "DirectThread",
                "screen",
                {
                    media: readonly (
                        | {
                            height: number;
                            media_type: 1;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            height: number;
                            media_type: 2;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            media_type: 8;
                            pk: string;
                            slides: readonly { media_type: 1
                            | 2; pk: string; url: string }[];
                        }
                    )[];
                    messages: readonly {
                        client_context?: string;
                        command_count?: number;
                        edit_count?: number;
                        item_id: string;
                        item_type: string;
                        media?: | {
                            height: number;
                            media_type: 1;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            height: number;
                            media_type: 2;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            media_type: 8;
                            pk: string;
                            slides: readonly {
                                media_type: (...)
                                | (...);
                                pk: string;
                                url: string;
                            }[];
                        };
                        message_ephemeral_lifetime_ms?: string;
                        text?: string;
                        timestamp: string;
                        user_id: string;
                    }[];
                    thread: {
                        is_group: boolean;
                        muted?: boolean;
                        thread_id: string;
                        thread_title: string;
                        thread_v2_id?: string;
                    };
                    users: readonly {
                        fbid_v2?: string;
                        full_name: string;
                        pk: string;
                        username: string;
                    }[];
                },
                DirectThreadActions,
                DirectThreadItems,
                ScreenHandle,
                "required",
                true,
                never,
                AndroidScreens,
            >,
        >[];
    }
    Index

    Properties

    media: readonly (
        | {
            data: {
                height: number;
                media_type: 1;
                pk: string;
                url: string;
                width: number;
            };
        } & Readonly<
            Omit<
                Pick<
                    {
                        height: number;
                        media_type: 1;
                        pk: string;
                        url: string;
                        width: number;
                    },
                    never,
                >,
                never,
            >,
        > & {
            toJSON: () => {
                height: number;
                media_type: 1;
                pk: string;
                url: string;
                width: number;
            };
        } & {
            id: "DirectPhoto";
            kind: "item";
            origin: AssembledHandle<
                "DirectThread",
                "screen",
                {
                    media: readonly (
                        | {
                            height: number;
                            media_type: 1;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            height: number;
                            media_type: 2;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            media_type: 8;
                            pk: string;
                            slides: readonly { media_type: ...; pk: ...; url: ... }[];
                        }
                    )[];
                    messages: readonly {
                        client_context?: string;
                        command_count?: number;
                        edit_count?: number;
                        item_id: string;
                        item_type: string;
                        media?: | {
                            height: number;
                            media_type: 1;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            height: number;
                            media_type: 2;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | { media_type: 8; pk: string; slides: readonly (...)[] };
                        message_ephemeral_lifetime_ms?: string;
                        text?: string;
                        timestamp: string;
                        user_id: string;
                    }[];
                    thread: {
                        is_group: boolean;
                        muted?: boolean;
                        thread_id: string;
                        thread_title: string;
                        thread_v2_id?: string;
                    };
                    users: readonly {
                        fbid_v2?: string;
                        full_name: string;
                        pk: string;
                        username: string;
                    }[];
                },
                DirectThreadActions,
                DirectThreadItems,
                ScreenHandle,
                "required",
                true,
                never,
                AndroidScreens,
            >;
        } & ScreenBoundActions<DirectPhotoItemActions, Record<never, never>> & {} & {} & {
            raw: unknown;
        } & {
            pipe: {
                <A>(this: A): A;
                <A, B = never>(this: A, ab: (_: A) => B): B;
                <A, B = never, C = never>(this: A, ab: (_: A) => B, bc: (_: B) => C): C;
                <A, B = never, C = never, D = never>(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                ): D;
                <A, B = never, C = never, D = never, E = never>(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                ): E;
                <A, B = never, C = never, D = never, E = never, F = never>(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                ): F;
                <A, B = never, C = never, D = never, E = never, F = never, G = never>(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                ): G;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                ): H;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                ): I;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                ): J;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                ): K;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                ): L;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                ): M;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                ): N;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                ): O;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                ): P;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                ): Q;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                    R = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                    qr: (_: Q) => R,
                ): R;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                    R = never,
                    S = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                    qr: (_: Q) => R,
                    rs: (_: R) => S,
                ): S;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                    R = never,
                    S = never,
                    T = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                    qr: (_: Q) => R,
                    rs: (_: R) => S,
                    st: (_: S) => T,
                ): T;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                    R = never,
                    S = never,
                    T = never,
                    U = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                    qr: (_: Q) => R,
                    rs: (_: R) => S,
                    st: (_: S) => T,
                    tu: (_: T) => U,
                ): U;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                    R = never,
                    S = never,
                    T = never,
                    U = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                    qr: (_: Q) => R,
                    rs: (_: R) => S,
                    st: (_: S) => T,
                    tu: (_: T) => U,
                ): U;
            };
        } & ScreenItemIdentityOf<
            ScreenItemDefinition<
                "DirectPhoto",
                { height: number; media_type: 1; pk: string; url: string; width: number },
                { height: number; media_type: 1; pk: string; url: string; width: number },
                Record<never, never>,
                never,
                never,
                DirectPhotoItemActions,
                undefined,
                never,
                never,
            >,
            "pk",
        >
        | {
            data: {
                height: number;
                media_type: 2;
                pk: string;
                url: string;
                width: number;
            };
        } & Readonly<
            Omit<
                Pick<
                    {
                        height: number;
                        media_type: 2;
                        pk: string;
                        url: string;
                        width: number;
                    },
                    never,
                >,
                never,
            >,
        > & {
            toJSON: () => {
                height: number;
                media_type: 2;
                pk: string;
                url: string;
                width: number;
            };
        } & {
            id: "DirectVideo";
            kind: "item";
            origin: AssembledHandle<
                "DirectThread",
                "screen",
                {
                    media: readonly (
                        | {
                            height: number;
                            media_type: 1;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            height: number;
                            media_type: 2;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            media_type: 8;
                            pk: string;
                            slides: readonly { media_type: ...; pk: ...; url: ... }[];
                        }
                    )[];
                    messages: readonly {
                        client_context?: string;
                        command_count?: number;
                        edit_count?: number;
                        item_id: string;
                        item_type: string;
                        media?: | {
                            height: number;
                            media_type: 1;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            height: number;
                            media_type: 2;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | { media_type: 8; pk: string; slides: readonly (...)[] };
                        message_ephemeral_lifetime_ms?: string;
                        text?: string;
                        timestamp: string;
                        user_id: string;
                    }[];
                    thread: {
                        is_group: boolean;
                        muted?: boolean;
                        thread_id: string;
                        thread_title: string;
                        thread_v2_id?: string;
                    };
                    users: readonly {
                        fbid_v2?: string;
                        full_name: string;
                        pk: string;
                        username: string;
                    }[];
                },
                DirectThreadActions,
                DirectThreadItems,
                ScreenHandle,
                "required",
                true,
                never,
                AndroidScreens,
            >;
        } & ScreenBoundActions<DirectVideoItemActions, Record<never, never>> & {} & {} & {
            raw: unknown;
        } & {
            pipe: {
                <A>(this: A): A;
                <A, B = never>(this: A, ab: (_: A) => B): B;
                <A, B = never, C = never>(this: A, ab: (_: A) => B, bc: (_: B) => C): C;
                <A, B = never, C = never, D = never>(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                ): D;
                <A, B = never, C = never, D = never, E = never>(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                ): E;
                <A, B = never, C = never, D = never, E = never, F = never>(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                ): F;
                <A, B = never, C = never, D = never, E = never, F = never, G = never>(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                ): G;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                ): H;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                ): I;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                ): J;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                ): K;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                ): L;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                ): M;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                ): N;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                ): O;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                ): P;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                ): Q;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                    R = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                    qr: (_: Q) => R,
                ): R;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                    R = never,
                    S = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                    qr: (_: Q) => R,
                    rs: (_: R) => S,
                ): S;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                    R = never,
                    S = never,
                    T = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                    qr: (_: Q) => R,
                    rs: (_: R) => S,
                    st: (_: S) => T,
                ): T;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                    R = never,
                    S = never,
                    T = never,
                    U = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                    qr: (_: Q) => R,
                    rs: (_: R) => S,
                    st: (_: S) => T,
                    tu: (_: T) => U,
                ): U;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                    R = never,
                    S = never,
                    T = never,
                    U = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                    qr: (_: Q) => R,
                    rs: (_: R) => S,
                    st: (_: S) => T,
                    tu: (_: T) => U,
                ): U;
            };
        } & ScreenItemIdentityOf<
            ScreenItemDefinition<
                "DirectVideo",
                { height: number; media_type: 2; pk: string; url: string; width: number },
                { height: number; media_type: 2; pk: string; url: string; width: number },
                Record<never, never>,
                never,
                never,
                DirectVideoItemActions,
                undefined,
                never,
                never,
            >,
            "pk",
        >
        | {
            data: {
                media_type: 8;
                pk: string;
                slides: readonly { media_type: 1 | 2; pk: string; url: string }[];
            };
        } & Readonly<
            Omit<
                Pick<
                    {
                        media_type: 8;
                        pk: string;
                        slides: readonly { media_type: 1
                        | 2; pk: string; url: string }[];
                    },
                    never,
                >,
                never,
            >,
        > & {
            toJSON: () => {
                media_type: 8;
                pk: string;
                slides: readonly { media_type: 1
                | 2; pk: string; url: string }[];
            };
        } & {
            id: "DirectCarousel";
            kind: "item";
            origin: AssembledHandle<
                "DirectThread",
                "screen",
                {
                    media: readonly (
                        | {
                            height: number;
                            media_type: 1;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            height: number;
                            media_type: 2;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            media_type: 8;
                            pk: string;
                            slides: readonly { media_type: ...; pk: ...; url: ... }[];
                        }
                    )[];
                    messages: readonly {
                        client_context?: string;
                        command_count?: number;
                        edit_count?: number;
                        item_id: string;
                        item_type: string;
                        media?: | {
                            height: number;
                            media_type: 1;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | {
                            height: number;
                            media_type: 2;
                            pk: string;
                            url: string;
                            width: number;
                        }
                        | { media_type: 8; pk: string; slides: readonly (...)[] };
                        message_ephemeral_lifetime_ms?: string;
                        text?: string;
                        timestamp: string;
                        user_id: string;
                    }[];
                    thread: {
                        is_group: boolean;
                        muted?: boolean;
                        thread_id: string;
                        thread_title: string;
                        thread_v2_id?: string;
                    };
                    users: readonly {
                        fbid_v2?: string;
                        full_name: string;
                        pk: string;
                        username: string;
                    }[];
                },
                DirectThreadActions,
                DirectThreadItems,
                ScreenHandle,
                "required",
                true,
                never,
                AndroidScreens,
            >;
        } & ScreenBoundActions<DirectCarouselItemActions, Record<never, never>> & {} & {} & {
            raw: unknown;
        } & {
            pipe: {
                <A>(this: A): A;
                <A, B = never>(this: A, ab: (_: A) => B): B;
                <A, B = never, C = never>(this: A, ab: (_: A) => B, bc: (_: B) => C): C;
                <A, B = never, C = never, D = never>(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                ): D;
                <A, B = never, C = never, D = never, E = never>(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                ): E;
                <A, B = never, C = never, D = never, E = never, F = never>(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                ): F;
                <A, B = never, C = never, D = never, E = never, F = never, G = never>(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                ): G;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                ): H;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                ): I;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                ): J;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                ): K;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                ): L;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                ): M;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                ): N;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                ): O;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                ): P;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                ): Q;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                    R = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                    qr: (_: Q) => R,
                ): R;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                    R = never,
                    S = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                    qr: (_: Q) => R,
                    rs: (_: R) => S,
                ): S;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                    R = never,
                    S = never,
                    T = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                    qr: (_: Q) => R,
                    rs: (_: R) => S,
                    st: (_: S) => T,
                ): T;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                    R = never,
                    S = never,
                    T = never,
                    U = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                    qr: (_: Q) => R,
                    rs: (_: R) => S,
                    st: (_: S) => T,
                    tu: (_: T) => U,
                ): U;
                <
                    A,
                    B = never,
                    C = never,
                    D = never,
                    E = never,
                    F = never,
                    G = never,
                    H = never,
                    I = never,
                    J = never,
                    K = never,
                    L = never,
                    M = never,
                    N = never,
                    O = never,
                    P = never,
                    Q = never,
                    R = never,
                    S = never,
                    T = never,
                    U = never,
                >(
                    this: A,
                    ab: (_: A) => B,
                    bc: (_: B) => C,
                    cd: (_: C) => D,
                    de: (_: D) => E,
                    ef: (_: E) => F,
                    fg: (_: F) => G,
                    gh: (_: G) => H,
                    hi: (_: H) => I,
                    ij: (_: I) => J,
                    jk: (_: J) => K,
                    kl: (_: K) => L,
                    lm: (_: L) => M,
                    mn: (_: M) => N,
                    no: (_: N) => O,
                    op: (_: O) => P,
                    pq: (_: P) => Q,
                    qr: (_: Q) => R,
                    rs: (_: R) => S,
                    st: (_: S) => T,
                    tu: (_: T) => U,
                ): U;
            };
        } & ScreenItemIdentityOf<
            ScreenItemDefinition<
                "DirectCarousel",
                {
                    media_type: 8;
                    pk: string;
                    slides: readonly { media_type: 1
                    | 2; pk: string; url: string }[];
                },
                {
                    media_type: 8;
                    pk: string;
                    slides: readonly { media_type: 1
                    | 2; pk: string; url: string }[];
                },
                Record<never, never>,
                never,
                never,
                DirectCarouselItemActions,
                undefined,
                never,
                never,
            >,
            "pk",
        >
    )[]

    The photos, videos and carousels shared in the conversation, told apart by media_type.

    messages: readonly ScreenListItem<
        {
            at: "messages";
            item: ScreenItemDefinition<
                "DirectThreadMessage",
                {
                    client_context?: string;
                    command_count?: number;
                    edit_count?: number;
                    item_id: string;
                    item_type: string;
                    media?: | {
                        height: number;
                        media_type: 1;
                        pk: string;
                        url: string;
                        width: number;
                    }
                    | {
                        height: number;
                        media_type: 2;
                        pk: string;
                        url: string;
                        width: number;
                    }
                    | {
                        media_type: 8;
                        pk: string;
                        slides: readonly { media_type: 1
                        | 2; pk: string; url: string }[];
                    };
                    message_ephemeral_lifetime_ms?: string;
                    text?: string;
                    timestamp: string;
                    user_id: string;
                },
                {
                    client_context?: string;
                    command_count?: number;
                    edit_count?: number;
                    item_id: string;
                    item_type: string;
                    media?: | {
                        height: number;
                        media_type: 1;
                        pk: string;
                        url: string;
                        width: number;
                    }
                    | {
                        height: number;
                        media_type: 2;
                        pk: string;
                        url: string;
                        width: number;
                    }
                    | {
                        media_type: 8;
                        pk: string;
                        slides: readonly { media_type: 1
                        | 2; pk: string; url: string }[];
                    };
                    message_ephemeral_lifetime_ms?: string;
                    text?: string;
                    timestamp: string;
                    user_id: string;
                },
                DirectThreadMessageState,
                never,
                never,
                DirectThreadMessageItemActions,
                | {
                    has_messages: boolean;
                    is_group: false;
                    ordinal_reserved?: boolean;
                    participants: readonly {
                        fbid_v2?: string;
                        full_name: string;
                        pk: string;
                        username: string;
                    }[];
                    peer_user_fbid?: string;
                    peer_user_id?: string;
                    send_attribution?: | "inbox"
                    | "inbox_new_message"
                    | "message_button"
                    | "direct_thread_creation_omnipicker";
                    thread_id: string;
                    thread_title: string;
                    thread_v2_id?: string;
                }
                | {
                    has_messages: boolean;
                    is_group: true;
                    lead_user_id?: string;
                    ordinal_reserved?: boolean;
                    participants: readonly {
                        fbid_v2?: string;
                        full_name: string;
                        pk: string;
                        username: string;
                    }[];
                    send_attribution?: | "inbox"
                    | "inbox_new_message"
                    | "message_button"
                    | "direct_thread_creation_omnipicker";
                    thread_id: string;
                    thread_title: string;
                    thread_v2_id?: string;
                },
                never,
                "DirectDoodleEditor",
            >;
            key: "item_id";
            source: ScreenItemNodes;
        },
        AssembledHandle<
            "DirectThread",
            "screen",
            {
                media: readonly (
                    | {
                        height: number;
                        media_type: 1;
                        pk: string;
                        url: string;
                        width: number;
                    }
                    | {
                        height: number;
                        media_type: 2;
                        pk: string;
                        url: string;
                        width: number;
                    }
                    | {
                        media_type: 8;
                        pk: string;
                        slides: readonly { media_type: 1
                        | 2; pk: string; url: string }[];
                    }
                )[];
                messages: readonly {
                    client_context?: string;
                    command_count?: number;
                    edit_count?: number;
                    item_id: string;
                    item_type: string;
                    media?: | {
                        height: number;
                        media_type: 1;
                        pk: string;
                        url: string;
                        width: number;
                    }
                    | {
                        height: number;
                        media_type: 2;
                        pk: string;
                        url: string;
                        width: number;
                    }
                    | {
                        media_type: 8;
                        pk: string;
                        slides: readonly { media_type: (...)
                        | (...); pk: string; url: string }[];
                    };
                    message_ephemeral_lifetime_ms?: string;
                    text?: string;
                    timestamp: string;
                    user_id: string;
                }[];
                thread: {
                    is_group: boolean;
                    muted?: boolean;
                    thread_id: string;
                    thread_title: string;
                    thread_v2_id?: string;
                };
                users: readonly {
                    fbid_v2?: string;
                    full_name: string;
                    pk: string;
                    username: string;
                }[];
            },
            DirectThreadActions,
            DirectThreadItems,
            ScreenHandle,
            "required",
            true,
            never,
            AndroidScreens,
        >,
    >[]

    The conversation's messages, in the server's order.

    participants: readonly ScreenListItem<
        {
            at: "users";
            item: ScreenItemDefinition<
                "DirectThreadParticipant",
                { fbid_v2?: string; full_name: string; pk: string; username: string },
                { fbid_v2?: string; full_name: string; pk: string; username: string },
                DirectThreadParticipantState,
                never,
                never,
                DirectThreadParticipantItemActions,

                    | {
                        has_messages: boolean;
                        is_group: false;
                        ordinal_reserved?: boolean;
                        participants: readonly {
                            fbid_v2?: string;
                            full_name: string;
                            pk: string;
                            username: string;
                        }[];
                        peer_user_fbid?: string;
                        peer_user_id?: string;
                        send_attribution?: | "inbox"
                        | "inbox_new_message"
                        | "message_button"
                        | "direct_thread_creation_omnipicker";
                        thread_id: string;
                        thread_title: string;
                        thread_v2_id?: string;
                    }
                    | {
                        has_messages: boolean;
                        is_group: true;
                        lead_user_id?: string;
                        ordinal_reserved?: boolean;
                        participants: readonly {
                            fbid_v2?: string;
                            full_name: string;
                            pk: string;
                            username: string;
                        }[];
                        send_attribution?: | "inbox"
                        | "inbox_new_message"
                        | "message_button"
                        | "direct_thread_creation_omnipicker";
                        thread_id: string;
                        thread_title: string;
                        thread_v2_id?: string;
                    },
                never,
                never,
            >;
            key: "pk";
            source: ScreenItemNodes;
        },
        AssembledHandle<
            "DirectThread",
            "screen",
            {
                media: readonly (
                    | {
                        height: number;
                        media_type: 1;
                        pk: string;
                        url: string;
                        width: number;
                    }
                    | {
                        height: number;
                        media_type: 2;
                        pk: string;
                        url: string;
                        width: number;
                    }
                    | {
                        media_type: 8;
                        pk: string;
                        slides: readonly { media_type: 1
                        | 2; pk: string; url: string }[];
                    }
                )[];
                messages: readonly {
                    client_context?: string;
                    command_count?: number;
                    edit_count?: number;
                    item_id: string;
                    item_type: string;
                    media?: | {
                        height: number;
                        media_type: 1;
                        pk: string;
                        url: string;
                        width: number;
                    }
                    | {
                        height: number;
                        media_type: 2;
                        pk: string;
                        url: string;
                        width: number;
                    }
                    | {
                        media_type: 8;
                        pk: string;
                        slides: readonly { media_type: (...)
                        | (...); pk: string; url: string }[];
                    };
                    message_ephemeral_lifetime_ms?: string;
                    text?: string;
                    timestamp: string;
                    user_id: string;
                }[];
                thread: {
                    is_group: boolean;
                    muted?: boolean;
                    thread_id: string;
                    thread_title: string;
                    thread_v2_id?: string;
                };
                users: readonly {
                    fbid_v2?: string;
                    full_name: string;
                    pk: string;
                    username: string;
                }[];
            },
            DirectThreadActions,
            DirectThreadItems,
            ScreenHandle,
            "required",
            true,
            never,
            AndroidScreens,
        >,
    >[]

    The people in the conversation.