IGPAPI
    Preparing search index...

    Variable DirectThreadThemePickerScreenConst

    DirectThreadThemePickerScreen: ScreenDefinition<
        "DirectThreadThemePicker",
        "screen",
        { thread_v2_id: string },
        {
            themes: readonly {
                name: string;
                theme_id: string | number;
                thread_v2_id: string;
            }[];
        },
        { thread_v2_id: string },

            | IgApiError
            | RequestError
            | ParseError
            | TransportError
            | InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
        PlainJsonApiHttp
        | MobileNavigation,
        {},
        {
            themes: {
                at: "themes";
                item: ScreenItemDefinition<
                    "DirectTheme",
                    { name: string; theme_id: string
                    | number; thread_v2_id: string },
                    { name: string; theme_id: string | number; thread_v2_id: string },
                    DirectThemeState,
                    never,
                    never,
                    {
                        setTheme: (
                            self: ScreenHandle,
                            state: DirectThemeState,
                        ) => (
                            ...args: [],
                        ) => Effect<
                            DirectThreadSetThemeResponse,
                            | IgApiError
                            | RequestError
                            | ParseError
                            | TransportError
                            | DirectThemeIdNotNumericError
                            | ScreenEnterConcurrentError
                            | ScreenNotOnTopError,
                            PlainJsonApiHttp
                            | MobileDevice
                            | MobileNavigation
                            | ScreenStack,
                        >;
                    },
                >;
                key: "theme_id";
            };
        },
        never,
    > = ...

    direct_thread_theme_picker, the theme list of one chat. Its enter sends direct_v2/selectable_themes/ (recorded on 451 while the picker was opening) and the list is the screen's data; each row applies itself with its own setTheme.

    IGGetThemePreview is not modelled: the 451 capture holds the request but no response body, so the preview screen has nothing to decode.