IGPAPI
    Preparing search index...

    Interface AndroidScreens

    The screens of the Android runtime, by ScreenId: one registry for every domain, not one per domain — an edge that crosses domains (a feed's search, a profile's contextual feed) must name its target in the same registry as the edges inside one domain. An edge names its target by id and reads this registry only where the call is used, so screens that lead to each other (the SERP's user result and the profile whose suggested users open the profile again) type without a cycle. The platform's screen set (androidScreens in android.screens.ts) holds these definitions and installs them.

    interface AndroidScreens {
        AccountRecoveryAuthenticationConfirmation: ScreenDefinition<
            "AccountRecoveryAuthenticationConfirmation",
            "screen",
            { identifier: string; ticket: string & Brand<"SearchTicket"> },
            { ticket: string & Brand<"CodeEntryTicket"> },
            { ticket: string & Brand<"CodeEntryTicket"> },

                | BloksHttpError
                | InvalidSkipOrdinalsError
                | AccountRecoveryBloksIssuedParamsMissingError
                | RecoverySearchClientInputParamsOrderError
                | ScreenEnterNavigationError
                | AccountRecoveryTicketUnknownError,
            | MobileDevice
            | MobileApplication
            | BloksHttp
            | MobileNavigation
            | AccountRecoveryTickets,
            {
                logInWithCode: (
                    self: ScreenHandle,
                    state: { ticket: string & Brand<"CodeEntryTicket"> },
                ) => (
                    ...args: [code: string],
                ) => Effect<
                    AccountRecoveryFirstScreen,
                    | IgNotFoundError
                    | IgRateLimitError
                    | IgSpamError
                    | IgSignupBlockError
                    | IgCheckpointError
                    | IgAccountSuspendedError
                    | IgAccountDisabledError
                    | IgCookieConsentRequiredError
                    | IgLoginRequiredError
                    | IgUserLoggedOutError
                    | IgChallengeWrongCodeError
                    | IgPrivateUserError
                    | IgInactiveUserError
                    | IgSentryBlockError
                    | IgUploadVideoError
                    | IgConfigureVideoError
                    | IgExactUserNotFoundError
                    | IgUserIdNotFoundError
                    | IgNetworkError
                    | IgDecompressionError
                    | IgParseError
                    | IgIpBlockError
                    | IgLoginTwoFactorRequiredError
                    | IgRequestsLimitError
                    | IgNotResolvableError
                    | RequestError
                    | ParseError
                    | TransportError
                    | LoginBloksParseError
                    | IgBloks429Error
                    | InvalidSkipOrdinalsError
                    | AccountRecoveryBloksIssuedParamsMissingError
                    | AccountRecoveryBloksUnknownResponseError
                    | ScreenDataError
                    | ScreenFeedPageError
                    | ScreenEnterNavigationError
                    | ScreenEnterConcurrentError
                    | ScreenLaunchFirstScreenError
                    | ScreenLaunchScreenNotInCatalogError
                    | ScreenLaunchSplashNotOnTopError
                    | ScreenLaunchSplashScreenError
                    | AppAlreadyStartedError
                    | ProcessNotSignedInError
                    | AccountRecoveryTicketUnknownError
                    | ScreenNotOnTopError,
                    | MobileSession
                    | MobileDevice
                    | MobileApplication
                    | SessionHeaderParser
                    | BloksHttp
                    | MobileNavigation
                    | AccountRecoveryTickets
                    | ScreenStack,
                >;
            },
            Record<never, never>,
            never,
        >;
        AccountRecoveryEmailCode: ScreenDefinition<
            "AccountRecoveryEmailCode",
            "screen",
            undefined,
            {
                maskedContact?: string;
                ticket: string & Brand<"LastResortCodeEntryTicket">;
            },
            {
                maskedContact?: string;
                ticket: string & Brand<"LastResortCodeEntryTicket">;
            },
            | BloksHttpError
            | InvalidSkipOrdinalsError
            | AccountRecoveryBloksIssuedParamsMissingError
            | ScreenEnterNavigationError
            | AccountRecoveryTicketUnknownError,
            | MobileSession
            | MobileDevice
            | MobileApplication
            | BloksHttp
            | MobileNavigation
            | AccountRecoveryTickets,
            {
                requestNewCode: (
                    self: ScreenHandle,
                    state: {
                        maskedContact?: string;
                        ticket: string & Brand<"LastResortCodeEntryTicket">;
                    },
                ) => (
                    ...args: [],
                ) => Effect<
                    AccountRecoveryFirstScreen
                    | undefined,

                        | IgNotFoundError
                        | IgRateLimitError
                        | IgSpamError
                        | IgSignupBlockError
                        | IgCheckpointError
                        | IgAccountSuspendedError
                        | IgAccountDisabledError
                        | IgCookieConsentRequiredError
                        | IgLoginRequiredError
                        | IgUserLoggedOutError
                        | IgChallengeWrongCodeError
                        | IgPrivateUserError
                        | IgInactiveUserError
                        | IgSentryBlockError
                        | IgUploadVideoError
                        | IgConfigureVideoError
                        | IgExactUserNotFoundError
                        | IgUserIdNotFoundError
                        | IgNetworkError
                        | IgDecompressionError
                        | IgParseError
                        | IgIpBlockError
                        | IgLoginTwoFactorRequiredError
                        | IgRequestsLimitError
                        | IgNotResolvableError
                        | RequestError
                        | ParseError
                        | TransportError
                        | LoginBloksParseError
                        | IgBloks429Error
                        | InvalidSkipOrdinalsError
                        | AccountRecoveryBloksUnknownResponseError
                        | AccountRecoveryBloksInvalidCodeError
                        | ScreenDataError
                        | ScreenFeedPageError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | ScreenLaunchFirstScreenError
                        | ScreenLaunchScreenNotInCatalogError
                        | ScreenLaunchSplashNotOnTopError
                        | ScreenLaunchSplashScreenError
                        | AppAlreadyStartedError
                        | ProcessNotSignedInError
                        | AccountRecoveryTicketUnknownError
                        | ScreenNotOnTopError,
                    | MobileSession
                    | MobileDevice
                    | MobileApplication
                    | SessionHeaderParser
                    | BloksHttp
                    | MobileNavigation
                    | AccountRecoveryTickets
                    | ScreenStack,
                >;
                submitCode: (
                    self: ScreenHandle,
                    state: {
                        maskedContact?: string;
                        ticket: string & Brand<"LastResortCodeEntryTicket">;
                    },
                ) => (
                    ...args: [code: string],
                ) => Effect<
                    AccountRecoveryFirstScreen,
                    | IgNotFoundError
                    | IgRateLimitError
                    | IgSpamError
                    | IgSignupBlockError
                    | IgCheckpointError
                    | IgAccountSuspendedError
                    | IgAccountDisabledError
                    | IgCookieConsentRequiredError
                    | IgLoginRequiredError
                    | IgUserLoggedOutError
                    | IgChallengeWrongCodeError
                    | IgPrivateUserError
                    | IgInactiveUserError
                    | IgSentryBlockError
                    | IgUploadVideoError
                    | IgConfigureVideoError
                    | IgExactUserNotFoundError
                    | IgUserIdNotFoundError
                    | IgNetworkError
                    | IgDecompressionError
                    | IgParseError
                    | IgIpBlockError
                    | IgLoginTwoFactorRequiredError
                    | IgRequestsLimitError
                    | IgNotResolvableError
                    | RequestError
                    | ParseError
                    | TransportError
                    | LoginBloksParseError
                    | IgBloks429Error
                    | InvalidSkipOrdinalsError
                    | AccountRecoveryBloksUnknownResponseError
                    | AccountRecoveryBloksInvalidCodeError
                    | ScreenDataError
                    | ScreenFeedPageError
                    | ScreenEnterNavigationError
                    | ScreenEnterConcurrentError
                    | ScreenLaunchFirstScreenError
                    | ScreenLaunchScreenNotInCatalogError
                    | ScreenLaunchSplashNotOnTopError
                    | ScreenLaunchSplashScreenError
                    | AppAlreadyStartedError
                    | ProcessNotSignedInError
                    | AccountRecoveryTicketUnknownError
                    | ScreenNotOnTopError,
                    | MobileSession
                    | MobileDevice
                    | MobileApplication
                    | SessionHeaderParser
                    | BloksHttp
                    | MobileNavigation
                    | AccountRecoveryTickets
                    | ScreenStack,
                >;
            },
            Record<never, never>,
            never,
        >;
        AccountRecoverySearch: ScreenDefinition<
            "AccountRecoverySearch",
            "screen",
            { aac: string; ticket?: string & Brand<"RecoveryActionTicket"> },
            {
                aac: string;
                searchScreenType: string;
                searchTicket: string & Brand<"SearchTicket">;
                textInputId: string;
                waterfallId: string;
            },
            {
                aac: string;
                searchScreenType: string;
                searchTicket: string & Brand<"SearchTicket">;
                textInputId: string;
                waterfallId: string;
            },
            | BloksHttpError
            | InvalidSkipOrdinalsError
            | AccountRecoveryBloksIssuedParamsMissingError
            | ScreenEnterNavigationError
            | AccountRecoveryTicketUnknownError,
            | MobileDevice
            | MobileApplication
            | BloksHttp
            | MobileNavigation
            | AccountRecoveryTickets,
            {
                findAccount: (
                    self: ScreenHandle,
                    state: {
                        aac: string;
                        searchScreenType: string;
                        searchTicket: string & Brand<"SearchTicket">;
                        textInputId: string;
                        waterfallId: string;
                    },
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<
                        ScreenDefinition<
                            "AccountRecoveryAuthenticationConfirmation",
                            "screen",
                            { identifier: string; ticket: string & Brand<"SearchTicket"> },
                            { ticket: string & Brand<"CodeEntryTicket"> },
                            { ticket: string & Brand<"CodeEntryTicket"> },

                                | BloksHttpError
                                | InvalidSkipOrdinalsError
                                | AccountRecoveryBloksIssuedParamsMissingError
                                | RecoverySearchClientInputParamsOrderError
                                | ScreenEnterNavigationError
                                | AccountRecoveryTicketUnknownError,
                            | MobileDevice
                            | MobileApplication
                            | BloksHttp
                            | MobileNavigation
                            | AccountRecoveryTickets,
                            {
                                logInWithCode: (
                                    self: ScreenHandle,
                                    state: { ticket: string & Brand<(...)> },
                                ) => (
                                    ...args: [code: string],
                                ) => Effect<
                                    AccountRecoveryFirstScreen,
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...),
                                    (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...),
                                >;
                            },
                            Record<never, never>,
                            never,
                        >,
                        readonly [string],
                        "button",
                    >,
                    (
                        ...args: readonly [string],
                    ) => Effect<
                        AssembledHandle<
                            "AccountRecoveryAuthenticationConfirmation",
                            "screen",
                            { ticket: string & Brand<"CodeEntryTicket"> },
                            {
                                logInWithCode: (
                                    self: ScreenHandle,
                                    state: { ticket: (...) & (...) },
                                ) => (...args: [code: ...]) => Effect<(...), (...), (...)>;
                            },
                            Record<never, never>,
                            ScreenHandle,
                            "required",
                            true,
                        >,

                            | BloksHttpError
                            | InvalidSkipOrdinalsError
                            | AccountRecoveryBloksIssuedParamsMissingError
                            | RecoverySearchClientInputParamsOrderError
                            | ScreenDataError
                            | ScreenEnterNavigationError
                            | ScreenEnterConcurrentError
                            | AccountRecoveryTicketUnknownError
                            | ScreenEdgeInputError
                            | ScreenNotOnTopError,
                        | MobileDevice
                        | MobileApplication
                        | BloksHttp
                        | MobileNavigation
                        | AccountRecoveryTickets
                        | ScreenCatalog
                        | ScreenStack,
                    >,
                >;
            },
            Record<never, never>,
            never,
        >;
        AccountRecoverySuccessLocationPermission: ScreenDefinition<
            "AccountRecoverySuccessLocationPermission",
            "screen",
            undefined,
            {},
            Record<never, never>,
            InvalidSkipOrdinalsError | ScreenEnterNavigationError,
            MobileNavigation,
            {
                close: (
                    self: ScreenHandle,
                    _state: never,
                ) => () => Effect<
                    ScreenFrameHandle
                    | undefined,

                        | ScreenEnterConcurrentError
                        | ScreenNotOnTopError
                        | ScreenNotNavigableError
                        | ScreenRootBackError,
                    MobileNavigation
                    | ScreenStack,
                >;
            },
            Record<never, never>,
            never,
        >;
        DirectCustomizeChat: ScreenDefinition<
            "DirectCustomizeChat",
            "screen",
            { thread_v2_id: string },
            { thread_v2_id: string },
            { thread_v2_id: string },

                | InvalidSkipOrdinalsError
                | ScreenEnterNavigationError
                | DirectThreadNotCreatedError,
            MobileNavigation,
            {
                openThemePicker: (
                    self: ScreenHandle,
                    state: { thread_v2_id: string },
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<
                        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: (...)
                                        | (...); thread_v2_id: string },
                                        { name: string; theme_id: (...) | (...); thread_v2_id: string },
                                        DirectThemeState,
                                        never,
                                        never,
                                        { setTheme: (self: ..., state: ...) => ... },
                                    >;
                                    key: "theme_id";
                                };
                            },
                            never,
                        >,
                        [],
                        "button",
                    >,
                    (
                        ...args: [],
                    ) => Effect<
                        AssembledHandle<
                            "DirectThreadThemePicker",
                            "screen",
                            {
                                themes: readonly {
                                    name: string;
                                    theme_id: (...)
                                    | (...);
                                    thread_v2_id: string;
                                }[];
                            },
                            {},
                            {
                                themes: {
                                    at: "themes";
                                    item: ScreenItemDefinition<
                                        "DirectTheme",
                                        { name: ...; theme_id: ...; thread_v2_id: ... },
                                        { name: ...; theme_id: ...; thread_v2_id: ... },
                                        DirectThemeState,
                                        never,
                                        never,
                                        { setTheme: ... },
                                    >;
                                    key: "theme_id";
                                };
                            },
                            ScreenHandle,
                            "required",
                            true,
                        >,
                        | IgApiError
                        | RequestError
                        | ParseError
                        | TransportError
                        | InvalidSkipOrdinalsError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError,
                        PlainJsonApiHttp
                        | MobileNavigation
                        | ScreenCatalog
                        | ScreenStack,
                    >,
                >;
            },
            Record<never, never>,
            never,
        >;
        DirectGroupNameAndPhotoEditor: ScreenDefinition<
            "DirectGroupNameAndPhotoEditor",
            "screen",
            { is_group: boolean; thread_title: string; thread_v2_id: string },
            { is_group: boolean; thread_title: string; thread_v2_id: string },
            { is_group: boolean; thread_title: string; thread_v2_id: string },

                | InvalidSkipOrdinalsError
                | ScreenEnterNavigationError
                | DirectGroupNameUnavailableError,
            MobileNavigation,
            {
                changeName: (
                    self: ScreenHandle,
                    state: { is_group: boolean; thread_title: string; thread_v2_id: string },
                ) => (
                    ...args: [name: string],
                ) => Effect<
                    DirectThreadUpdateTitleResponse,
                    | IgApiError
                    | RequestError
                    | ParseError
                    | TransportError
                    | ScreenEnterConcurrentError
                    | ScreenNotOnTopError,
                    PlainJsonApiHttp
                    | MobileDevice
                    | MobileNavigation
                    | ScreenStack,
                >;
            },
            Record<never, never>,
            never,
        >;
        DirectInbox: ScreenDefinition<
            "DirectInbox",
            "tab",
            undefined,
            {
                seq_id: number;
                threads: readonly {
                    is_group: boolean;
                    last_activity_at: string;
                    muted: boolean;
                    preview: readonly {
                        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;
                            }[];
                        };
                        text?: string;
                        timestamp: string;
                        user_id: string;
                    }[];
                    thread_id: string;
                    thread_title: string;
                    thread_v2_id: string;
                    users: readonly { full_name: string; pk: string; username: string }[];
                }[];
            },
            { seq_id: number },

                | IgApiError
                | RequestError
                | ParseError
                | TransportError
                | InvalidSkipOrdinalsError
                | ScreenEnterNavigationError,
            PlainJsonApiHttp
            | MobileApplication
            | MobileNavigation,
            {
                openNewMessage: (
                    self: ScreenHandle,
                    state: { seq_id: number },
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<
                        ScreenDefinition<
                            "DirectRecipientPicker",
                            "screen",
                            { seq_id: number },
                            {
                                recipients: readonly {
                                    full_name: string;
                                    pk: string;
                                    seq_id: number;
                                    username: string;
                                }[];
                            },
                            { seq_id: number },

                                | IgCheckpointError
                                | IgAccountSuspendedError
                                | IgAccountDisabledError
                                | IgLoginRequiredError
                                | IgUserLoggedOutError
                                | InvalidSkipOrdinalsError
                                | ScreenEnterNavigationError,
                            GraphqlJsonHttp
                            | MobileApplication
                            | MobileNavigation,
                            {
                                search: (
                                    self: ScreenHandle,
                                    state: { seq_id: number },
                                ) => (
                                    ...args: [query: string],
                                ) => Effect<
                                    readonly (...)[],
                                    (...) | (...) | (...) | (...) | (...) | (...) | (...),
                                    (...) | (...) | (...),
                                >;
                            },
                            {
                                recipients: {
                                    at: "recipients";
                                    item: ScreenItemDefinition<
                                        "DirectRecipient",
                                        { full_name: string; pk: string; seq_id: number; username: string },
                                        { full_name: string; pk: string; seq_id: number; username: string },
                                        { seq_id: number; userId: string },
                                        never,
                                        never,
                                        { openThread: (self: ..., state: ...) => ... },
                                    >;
                                    key: "pk";
                                };
                            },
                            never,
                        >,
                        [],
                        "button",
                    >,
                    (
                        ...args: [],
                    ) => Effect<
                        AssembledHandle<
                            "DirectRecipientPicker",
                            "screen",
                            {
                                recipients: readonly {
                                    full_name: string;
                                    pk: string;
                                    seq_id: number;
                                    username: string;
                                }[];
                            },
                            {
                                search: (
                                    self: ScreenHandle,
                                    state: { seq_id: number },
                                ) => (...args: [query: ...]) => Effect<(...), (...), (...)>;
                            },
                            {
                                recipients: {
                                    at: "recipients";
                                    item: ScreenItemDefinition<
                                        "DirectRecipient",
                                        { full_name: ...; pk: ...; seq_id: ...; username: ... },
                                        { full_name: ...; pk: ...; seq_id: ...; username: ... },
                                        { seq_id: ...; userId: ... },
                                        never,
                                        never,
                                        { openThread: ... },
                                    >;
                                    key: "pk";
                                };
                            },
                            ScreenHandle,
                            "required",
                            true,
                        >,
                        | IgCheckpointError
                        | IgAccountSuspendedError
                        | IgAccountDisabledError
                        | IgLoginRequiredError
                        | IgUserLoggedOutError
                        | InvalidSkipOrdinalsError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError,
                        | GraphqlJsonHttp
                        | MobileApplication
                        | MobileNavigation
                        | ScreenCatalog
                        | ScreenStack,
                    >,
                >;
            },
            {
                threads: {
                    at: "threads";
                    item: ScreenItemDefinition<
                        "DirectInboxThread",
                        {
                            is_group: boolean;
                            last_activity_at: string;
                            muted: boolean;
                            preview: readonly {
                                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: ...; url: ... }[];
                                };
                                text?: string;
                                timestamp: string;
                                user_id: string;
                            }[];
                            thread_id: string;
                            thread_title: string;
                            thread_v2_id: string;
                            users: readonly { full_name: string; pk: string; username: string }[];
                        },
                        {
                            is_group: boolean;
                            last_activity_at: string;
                            muted: boolean;
                            preview: readonly {
                                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: ...; url: ... }[];
                                };
                                text?: string;
                                timestamp: string;
                                user_id: string;
                            }[];
                            thread_id: string;
                            thread_title: string;
                            thread_v2_id: string;
                            users: readonly { full_name: string; pk: string; username: string }[];
                        },
                        { peerUserIds: string[]; thread_id: string; thread_v2_id: string },
                        never,
                        never,
                        {
                            open: (
                                self: ScreenHandle,
                                state: {
                                    peerUserIds: readonly string[];
                                    thread_id: string;
                                    thread_v2_id: string;
                                },
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<
                                    ScreenDefinition<
                                        "DirectThread",
                                        "screen",
                                        | {
                                            kind: ...;
                                            peerUserIds: ...;
                                            send_attribution?: ...;
                                            thread_id: ...;
                                            thread_v2_id: ...;
                                        }
                                        | {
                                            kind: ...;
                                            recipient: ...;
                                            send_attribution?: ...;
                                            seq_id: ...;
                                        },
                                        {
                                            media: readonly (...)[];
                                            messages: readonly (...)[];
                                            thread: (...) | (...);
                                            users: readonly (...)[];
                                        },
                                        unknown,
                                        unknown,
                                        unknown,
                                        {
                                            openCustomizeChat: (self: ..., state: ...) => ...;
                                            openThreadDetails: (self: ..., state: ...) => ...;
                                            sendMessage: (self: ..., state: ...) => ...;
                                        },
                                        {
                                            media: { at: ...; by: ...; key: ...; variants: ... };
                                            messages: { at: ...; item: ...; key: ... };
                                            participants: { at: ...; item: ...; key: ... };
                                        },
                                        never,
                                    >,
                                    [],
                                    "inbox",
                                >,
                                (
                                    ...args: [],
                                ) => Effect<
                                    AssembledHandle<
                                        "DirectThread",
                                        "screen",
                                        { media: ...; messages: ...; thread: ...; users: ... },
                                        {
                                            openCustomizeChat: ...;
                                            openThreadDetails: ...;
                                            sendMessage: ...;
                                        },
                                        { media: ...; messages: ...; participants: ... },
                                        ScreenHandle,
                                        "required",
                                        true,
                                    >,
                                    unknown,
                                    unknown,
                                >,
                            >;
                        },
                    >;
                    key: "thread_v2_id";
                };
            },
            never,
        >;
        DirectRecipientPicker: ScreenDefinition<
            "DirectRecipientPicker",
            "screen",
            { seq_id: number },
            {
                recipients: readonly {
                    full_name: string;
                    pk: string;
                    seq_id: number;
                    username: string;
                }[];
            },
            { seq_id: number },

                | IgCheckpointError
                | IgAccountSuspendedError
                | IgAccountDisabledError
                | IgLoginRequiredError
                | IgUserLoggedOutError
                | InvalidSkipOrdinalsError
                | ScreenEnterNavigationError,
            GraphqlJsonHttp
            | MobileApplication
            | MobileNavigation,
            {
                search: (
                    self: ScreenHandle,
                    state: { seq_id: number },
                ) => (
                    ...args: [query: string],
                ) => Effect<
                    readonly AssembledHandle<
                        "DirectRecipient",
                        "item",
                        { full_name: string; pk: string; seq_id: number; username: string },
                        {
                            openThread: (
                                self: ScreenHandle,
                                state: { seq_id: number; userId: string },
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<(...), (...), (...)>,
                                (...args: ...) => ...,
                            >;
                        },
                        Record<never, never>,
                        ScreenHandle,
                        "optional",
                        false,
                    >[],

                        | IgApiError
                        | RequestError
                        | ParseError
                        | TransportError
                        | ScreenDataError
                        | ScreenEnterConcurrentError
                        | ScreenNotOnTopError,
                    PlainJsonApiHttp
                    | MobileNavigation
                    | ScreenStack,
                >;
            },
            {
                recipients: {
                    at: "recipients";
                    item: ScreenItemDefinition<
                        "DirectRecipient",
                        { full_name: string; pk: string; seq_id: number; username: string },
                        { full_name: string; pk: string; seq_id: number; username: string },
                        { seq_id: number; userId: string },
                        never,
                        never,
                        {
                            openThread: (
                                self: ScreenHandle,
                                state: { seq_id: number; userId: string },
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<
                                    ScreenDefinition<
                                        "DirectThread",
                                        "screen",
                                        | {
                                            kind: ...;
                                            peerUserIds: ...;
                                            send_attribution?: ...;
                                            thread_id: ...;
                                            thread_v2_id: ...;
                                        }
                                        | {
                                            kind: ...;
                                            recipient: ...;
                                            send_attribution?: ...;
                                            seq_id: ...;
                                        },
                                        {
                                            media: readonly (...)[];
                                            messages: readonly (...)[];
                                            thread: (...) | (...);
                                            users: readonly (...)[];
                                        },
                                        unknown,
                                        unknown,
                                        unknown,
                                        {
                                            openCustomizeChat: (self: ..., state: ...) => ...;
                                            openThreadDetails: (self: ..., state: ...) => ...;
                                            sendMessage: (self: ..., state: ...) => ...;
                                        },
                                        {
                                            media: { at: ...; by: ...; key: ...; variants: ... };
                                            messages: { at: ...; item: ...; key: ... };
                                            participants: { at: ...; item: ...; key: ... };
                                        },
                                        never,
                                    >,
                                    [],
                                    "button",
                                >,
                                (
                                    ...args: [],
                                ) => Effect<
                                    AssembledHandle<
                                        "DirectThread",
                                        "screen",
                                        { media: ...; messages: ...; thread: ...; users: ... },
                                        {
                                            openCustomizeChat: ...;
                                            openThreadDetails: ...;
                                            sendMessage: ...;
                                        },
                                        { media: ...; messages: ...; participants: ... },
                                        ScreenHandle,
                                        "required",
                                        true,
                                    >,
                                    unknown,
                                    unknown,
                                >,
                            >;
                        },
                    >;
                    key: "pk";
                };
            },
            never,
        >;
        DirectThread: ScreenDefinition<
            "DirectThread",
            "screen",
            | {
                kind: "thread";
                peerUserIds: readonly string[];
                send_attribution?: string;
                thread_id: string;
                thread_v2_id: string;
            }
            | {
                kind: "recipient";
                recipient: string;
                send_attribution?: string;
                seq_id: number;
            },
            {
                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 {
                    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 }[];
                    };
                    send_attribution?: string;
                    text?: string;
                    thread_id: string;
                    timestamp: string;
                    user_id: string;
                }[];
                thread: | {
                    is_group: boolean;
                    kind: "thread";
                    muted: boolean;
                    thread_id: string;
                    thread_title: string;
                    thread_v2_id: string;
                }
                | { kind: "compose"; recipient_user_id: string; thread_title: string };
                users: readonly {
                    full_name: string;
                    pk: string;
                    thread_v2_id: string;
                    username: string;
                }[];
            },
            unknown,
            unknown,
            unknown,
            {
                openCustomizeChat: (
                    self: ScreenHandle,
                    state:
                        | {
                            is_group: boolean;
                            kind: "thread";
                            peer_user_id?: string;
                            send_attribution?: string;
                            thread_id: string;
                            thread_title: string;
                            thread_v2_id: string;
                        }
                        | {
                            kind: "compose";
                            recipient_user_id: string;
                            send_attribution?: string;
                        },
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<
                        ScreenDefinition<
                            "DirectCustomizeChat",
                            "screen",
                            { thread_v2_id: string },
                            { thread_v2_id: string },
                            { thread_v2_id: string },

                                | InvalidSkipOrdinalsError
                                | ScreenEnterNavigationError
                                | DirectThreadNotCreatedError,
                            MobileNavigation,
                            {
                                openThemePicker: (
                                    self: ScreenHandle,
                                    state: { thread_v2_id: string },
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<
                                        ScreenDefinition<
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                        >,
                                        [],
                                        "button",
                                    >,
                                    (...args: []) => Effect<(...), (...), (...)>,
                                >;
                            },
                            Record<never, never>,
                            never,
                        >,
                        [],
                        "button",
                    >,
                    (
                        ...args: [],
                    ) => Effect<
                        AssembledHandle<
                            "DirectCustomizeChat",
                            "screen",
                            { thread_v2_id: string },
                            {
                                openThemePicker: (
                                    self: ScreenHandle,
                                    state: { thread_v2_id: string },
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<(...), (...), (...)>,
                                    (...args: ...) => ...,
                                >;
                            },
                            Record<never, never>,
                            ScreenHandle,
                            "required",
                            true,
                        >,

                            | InvalidSkipOrdinalsError
                            | ScreenDataError
                            | ScreenEnterNavigationError
                            | ScreenEnterConcurrentError
                            | ScreenEdgeInputError
                            | ScreenNotOnTopError
                            | DirectThreadNotCreatedError,
                        MobileNavigation
                        | ScreenCatalog
                        | ScreenStack,
                    >,
                >;
                openThreadDetails: (
                    self: ScreenHandle,
                    state:
                        | {
                            is_group: boolean;
                            kind: "thread";
                            peer_user_id?: string;
                            send_attribution?: string;
                            thread_id: string;
                            thread_title: string;
                            thread_v2_id: string;
                        }
                        | {
                            kind: "compose";
                            recipient_user_id: string;
                            send_attribution?: string;
                        },
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<
                        ScreenDefinition<
                            "DirectThreadDetails",
                            "screen",
                            {
                                is_group: boolean;
                                peer_user_id?: string;
                                thread_title: string;
                                thread_v2_id: string;
                            },
                            {
                                is_group: boolean;
                                peer_user_id?: string;
                                thread_title: string;
                                thread_v2_id: string;
                            },
                            {
                                is_group: boolean;
                                peer_user_id?: string;
                                thread_title: string;
                                thread_v2_id: string;
                            },
                            | IgApiError
                            | RequestError
                            | ParseError
                            | TransportError
                            | InvalidSkipOrdinalsError
                            | ScreenEnterNavigationError
                            | DirectThreadNotCreatedError,
                            | PlainJsonApiHttp
                            | GraphqlJsonHttp
                            | MobileApplication
                            | MobileNavigation,
                            {
                                openSharedMedia: (
                                    self: ScreenHandle,
                                    state: {
                                        is_group: boolean;
                                        peer_user_id?: string;
                                        thread_title: string;
                                        thread_v2_id: string;
                                    },
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<
                                        ScreenDefinition<
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                        >,
                                        [],
                                        "button",
                                    >,
                                    (...args: []) => Effect<(...), (...), (...)>,
                                >;
                            },
                            Record<never, never>,
                            never,
                        >,
                        [],
                        "button",
                    >,
                    (
                        ...args: [],
                    ) => Effect<
                        AssembledHandle<
                            "DirectThreadDetails",
                            "screen",
                            {
                                is_group: boolean;
                                peer_user_id?: string;
                                thread_title: string;
                                thread_v2_id: string;
                            },
                            {
                                openSharedMedia: (
                                    self: ScreenHandle,
                                    state: {
                                        is_group: boolean;
                                        peer_user_id?: (...) | (...);
                                        thread_title: string;
                                        thread_v2_id: string;
                                    },
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<(...), (...), (...)>,
                                    (...args: ...) => ...,
                                >;
                            },
                            Record<never, never>,
                            ScreenHandle,
                            "required",
                            true,
                        >,

                            | IgApiError
                            | RequestError
                            | ParseError
                            | TransportError
                            | InvalidSkipOrdinalsError
                            | ScreenDataError
                            | ScreenEnterNavigationError
                            | ScreenEnterConcurrentError
                            | ScreenEdgeInputError
                            | ScreenNotOnTopError
                            | DirectThreadNotCreatedError,
                        | PlainJsonApiHttp
                        | GraphqlJsonHttp
                        | MobileApplication
                        | MobileNavigation
                        | ScreenCatalog
                        | ScreenStack,
                    >,
                >;
                sendMessage: (
                    self: ScreenHandle,
                    state:
                        | {
                            is_group: boolean;
                            kind: "thread";
                            peer_user_id?: string;
                            send_attribution?: string;
                            thread_id: string;
                            thread_title: string;
                            thread_v2_id: string;
                        }
                        | {
                            kind: "compose";
                            recipient_user_id: string;
                            send_attribution?: string;
                        },
                ) => (
                    ...args: [text: string],
                ) => Effect<
                    DirectThreadSentMessage,
                    | IgApiError
                    | RequestError
                    | ParseError
                    | TransportError
                    | ScreenEnterConcurrentError
                    | ScreenNotOnTopError,
                    | PlainJsonApiHttp
                    | Signature
                    | MobileDevice
                    | GraphqlJsonHttp
                    | MobileApplication
                    | NavigationWire
                    | MobileNavigation
                    | ScreenStack,
                >;
            },
            {
                media: {
                    at: "media";
                    by: "media_type";
                    key: "pk";
                    variants: {
                        "1": 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,
                            {},
                        >;
                        "2": 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,
                            {},
                        >;
                        "8": 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,
                            {},
                        >;
                    };
                };
                messages: {
                    at: "messages";
                    item: ScreenItemDefinition<
                        "DirectThreadMessage",
                        {
                            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 }[];
                            };
                            send_attribution?: string;
                            text?: string;
                            thread_id: string;
                            timestamp: string;
                            user_id: string;
                        },
                        {
                            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 }[];
                            };
                            send_attribution?: string;
                            text?: string;
                            thread_id: string;
                            timestamp: string;
                            user_id: string;
                        },
                        DirectThreadMessageState,
                        never,
                        never,
                        {
                            react: (
                                self: ScreenHandle,
                                state: DirectThreadMessageState,
                            ) => (
                                ...args: [reaction: "like"],
                            ) => Effect<
                                DirectBroadcastResponse,
                                | IgApiError
                                | RequestError
                                | ParseError
                                | TransportError
                                | ScreenEnterConcurrentError
                                | ScreenNotOnTopError,
                                | PlainJsonApiHttp
                                | Signature
                                | MobileDevice
                                | NavigationWire
                                | MobileNavigation
                                | ScreenStack,
                            >;
                        },
                    >;
                    key: "item_id";
                };
                participants: {
                    at: "users";
                    item: ScreenItemDefinition<
                        "DirectThreadParticipant",
                        {
                            full_name: string;
                            pk: string;
                            thread_v2_id: string;
                            username: string;
                        },
                        {
                            full_name: string;
                            pk: string;
                            thread_v2_id: string;
                            username: string;
                        },
                        DirectThreadParticipantState,
                        never,
                        never,
                        {
                            openNicknameEditor: (
                                self: ScreenHandle,
                                state: DirectThreadParticipantState,
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<
                                    ScreenDefinition<
                                        "DirectThreadNicknameChange",
                                        "screen",
                                        { thread_v2_id: string; user_id: string },
                                        { thread_v2_id: string; user_id: string },
                                        { thread_v2_id: string; user_id: string },

                                            | InvalidSkipOrdinalsError
                                            | ScreenEnterNavigationError
                                            | DirectThreadNotCreatedError,
                                        MobileNavigation,
                                        { changeNickname: (self: ..., state: ...) => ... },
                                        Record<never, never>,
                                        never,
                                    >,
                                    [],
                                    "button",
                                >,
                                (
                                    ...args: [],
                                ) => Effect<
                                    AssembledHandle<
                                        "DirectThreadNicknameChange",
                                        "screen",
                                        { thread_v2_id: ...; user_id: ... },
                                        { changeNickname: ... },
                                        Record<(...), (...)>,
                                        ScreenHandle,
                                        "required",
                                        true,
                                    >,

                                        | InvalidSkipOrdinalsError
                                        | ScreenDataError
                                        | ScreenEnterNavigationError
                                        | ScreenEnterConcurrentError
                                        | ScreenEdgeInputError
                                        | ScreenNotOnTopError
                                        | DirectThreadNotCreatedError,
                                    MobileNavigation
                                    | ScreenCatalog
                                    | ScreenStack,
                                >,
                            >;
                        },
                    >;
                    key: "pk";
                };
            },
            never,
        >;
        DirectThreadDetails: ScreenDefinition<
            "DirectThreadDetails",
            "screen",
            {
                is_group: boolean;
                peer_user_id?: string;
                thread_title: string;
                thread_v2_id: string;
            },
            {
                is_group: boolean;
                peer_user_id?: string;
                thread_title: string;
                thread_v2_id: string;
            },
            {
                is_group: boolean;
                peer_user_id?: string;
                thread_title: string;
                thread_v2_id: string;
            },
            | IgApiError
            | RequestError
            | ParseError
            | TransportError
            | InvalidSkipOrdinalsError
            | ScreenEnterNavigationError
            | DirectThreadNotCreatedError,
            PlainJsonApiHttp
            | GraphqlJsonHttp
            | MobileApplication
            | MobileNavigation,
            {
                openSharedMedia: (
                    self: ScreenHandle,
                    state: {
                        is_group: boolean;
                        peer_user_id?: string;
                        thread_title: string;
                        thread_v2_id: string;
                    },
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<
                        ScreenDefinition<
                            "DirectThreadSharedMedia",
                            "screen",
                            { is_group: boolean; thread_title: string; thread_v2_id: string },
                            { is_group: boolean; thread_title: string; thread_v2_id: string },
                            { is_group: boolean; thread_title: string; thread_v2_id: string },

                                | IgApiError
                                | RequestError
                                | ParseError
                                | TransportError
                                | InvalidSkipOrdinalsError
                                | ScreenEnterNavigationError,
                            PlainJsonApiHttp
                            | MobileNavigation,
                            {
                                openGroupNameEditor: (
                                    self: ScreenHandle,
                                    state: {
                                        is_group: boolean;
                                        thread_title: string;
                                        thread_v2_id: string;
                                    },
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<
                                        ScreenDefinition<
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                        >,
                                        [],
                                        "button",
                                    >,
                                    (...args: []) => Effect<(...), (...), (...)>,
                                >;
                            },
                            Record<never, never>,
                            never,
                        >,
                        [],
                        "button",
                    >,
                    (
                        ...args: [],
                    ) => Effect<
                        AssembledHandle<
                            "DirectThreadSharedMedia",
                            "screen",
                            { is_group: boolean; thread_title: string; thread_v2_id: string },
                            {
                                openGroupNameEditor: (
                                    self: ScreenHandle,
                                    state: {
                                        is_group: boolean;
                                        thread_title: string;
                                        thread_v2_id: string;
                                    },
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<(...), (...), (...)>,
                                    (...args: ...) => ...,
                                >;
                            },
                            Record<never, never>,
                            ScreenHandle,
                            "required",
                            true,
                        >,

                            | IgApiError
                            | RequestError
                            | ParseError
                            | TransportError
                            | InvalidSkipOrdinalsError
                            | ScreenDataError
                            | ScreenEnterNavigationError
                            | ScreenEnterConcurrentError
                            | ScreenEdgeInputError
                            | ScreenNotOnTopError,
                        PlainJsonApiHttp
                        | MobileNavigation
                        | ScreenCatalog
                        | ScreenStack,
                    >,
                >;
            },
            Record<never, never>,
            never,
        >;
        DirectThreadNicknameChange: ScreenDefinition<
            "DirectThreadNicknameChange",
            "screen",
            { thread_v2_id: string; user_id: string },
            { thread_v2_id: string; user_id: string },
            { thread_v2_id: string; user_id: string },

                | InvalidSkipOrdinalsError
                | ScreenEnterNavigationError
                | DirectThreadNotCreatedError,
            MobileNavigation,
            {
                changeNickname: (
                    self: ScreenHandle,
                    state: { thread_v2_id: string; user_id: string },
                ) => (
                    ...args: [nickname: string],
                ) => Effect<
                    boolean,
                    | IgApiError
                    | RequestError
                    | ParseError
                    | TransportError
                    | SchemaError
                    | GraphqlRootFieldMissingError
                    | ScreenEnterConcurrentError
                    | ScreenNotOnTopError,
                    GraphqlJsonHttp
                    | MobileApplication
                    | MobileNavigation
                    | ScreenStack,
                >;
            },
            Record<never, never>,
            never,
        >;
        DirectThreadSharedMedia: ScreenDefinition<
            "DirectThreadSharedMedia",
            "screen",
            { is_group: boolean; thread_title: string; thread_v2_id: string },
            { is_group: boolean; thread_title: string; thread_v2_id: string },
            { is_group: boolean; thread_title: string; thread_v2_id: string },

                | IgApiError
                | RequestError
                | ParseError
                | TransportError
                | InvalidSkipOrdinalsError
                | ScreenEnterNavigationError,
            PlainJsonApiHttp
            | MobileNavigation,
            {
                openGroupNameEditor: (
                    self: ScreenHandle,
                    state: { is_group: boolean; thread_title: string; thread_v2_id: string },
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<
                        ScreenDefinition<
                            "DirectGroupNameAndPhotoEditor",
                            "screen",
                            { is_group: boolean; thread_title: string; thread_v2_id: string },
                            { is_group: boolean; thread_title: string; thread_v2_id: string },
                            { is_group: boolean; thread_title: string; thread_v2_id: string },

                                | InvalidSkipOrdinalsError
                                | ScreenEnterNavigationError
                                | DirectGroupNameUnavailableError,
                            MobileNavigation,
                            {
                                changeName: (
                                    self: ScreenHandle,
                                    state: {
                                        is_group: boolean;
                                        thread_title: string;
                                        thread_v2_id: string;
                                    },
                                ) => (
                                    ...args: [name: string],
                                ) => Effect<
                                    DirectThreadUpdateTitleResponse,
                                    (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...),
                                    (...) | (...) | (...) | (...),
                                >;
                            },
                            Record<never, never>,
                            never,
                        >,
                        [],
                        "button",
                    >,
                    (
                        ...args: [],
                    ) => Effect<
                        AssembledHandle<
                            "DirectGroupNameAndPhotoEditor",
                            "screen",
                            { is_group: boolean; thread_title: string; thread_v2_id: string },
                            {
                                changeName: (
                                    self: ScreenHandle,
                                    state: {
                                        is_group: boolean;
                                        thread_title: string;
                                        thread_v2_id: string;
                                    },
                                ) => (...args: [name: ...]) => Effect<(...), (...), (...)>;
                            },
                            Record<never, never>,
                            ScreenHandle,
                            "required",
                            true,
                        >,

                            | InvalidSkipOrdinalsError
                            | ScreenDataError
                            | ScreenEnterNavigationError
                            | ScreenEnterConcurrentError
                            | ScreenEdgeInputError
                            | ScreenNotOnTopError
                            | DirectGroupNameUnavailableError,
                        MobileNavigation
                        | ScreenCatalog
                        | ScreenStack,
                    >,
                >;
            },
            Record<never, never>,
            never,
        >;
        DirectThreadThemePicker: 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,
        >;
        Explore: ScreenDefinition<
            "Explore",
            "tab",
            undefined,
            {
                recent: readonly {
                    fullName: string;
                    userId: string;
                    username: string;
                }[];
            },
            ExploreState,
            | IgApiError
            | RequestError
            | ParseError
            | TransportError
            | InvalidSkipOrdinalsError
            | ScreenDataError
            | ScreenEnterNavigationError,
            PlainJsonApiHttp
            | Signature
            | MobileNavigation,
            {
                openSearchInput: (
                    self: ScreenHandle,
                    state: ExploreState,
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<
                        ScreenDefinition<
                            "SearchInput",
                            "screen",
                            | {
                                lastSeenMedia?: readonly {
                                    mediaIds: ...;
                                    surfaceType: ...;
                                    timestamp: ...;
                                }[];
                                query: string;
                                session?: {
                                    clientUuidRankToken?: (...)
                                    | (...);
                                    searchSessionId: string;
                                    serpSessionId?: (...) | (...);
                                    typeaheadSessionId?: (...) | (...);
                                };
                            }
                            | {
                                recent: readonly {
                                    fullName: string;
                                    userId: string;
                                    username: string;
                                }[];
                            },
                            {
                                query: string;
                                rankToken: string;
                                recentAccounts: readonly {
                                    fullName: string;
                                    userId: string;
                                    username: string;
                                }[];
                                results: readonly (
                                    | {
                                        __typename: "XDTTypeaheadSearchKeyword";
                                        keyword_lazified: { id: ...; name: ...; user?: ... };
                                    }
                                    | {
                                        __typename: "XDTTypeaheadSearchUser";
                                        rank_token?: (...)
                                        | (...);
                                        user: {
                                            full_name?: ...;
                                            id: ...;
                                            is_private?: ...;
                                            is_verified?: ...;
                                            latest_reel_media?: ...;
                                            profile_pic_url?: ...;
                                            search_serp_type?: ...;
                                            username: ...;
                                        };
                                    }
                                    | {
                                        __typename: "XDTTypeaheadSearchHashtag";
                                        hashtag: { id: ...; media_count?: ...; name: ... };
                                    }
                                )[];
                                session?: {
                                    clientUuidRankToken: string;
                                    searchSessionId: string;
                                    serpSessionId?: string;
                                    typeaheadSessionId: string;
                                };
                            },
                            SearchInputState,
                            | IgApiError
                            | RequestError
                            | ParseError
                            | TransportError
                            | SchemaError
                            | GraphqlRootFieldMissingError
                            | InvalidSkipOrdinalsError
                            | ScreenEnterNavigationError,
                            MobileDevice
                            | GraphqlJsonHttp
                            | MobileApplication
                            | MobileNavigation,
                            {
                                change: (
                                    self: ScreenHandle,
                                    state: SearchInputState,
                                ) => ScreenDataMember<
                                    ScreenDataShape,
                                    (...args: [query: ...]) => Effect<(...), (...), (...)>,
                                >;
                                search: (
                                    self: ScreenHandle,
                                    state: SearchInputState,
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<
                                        ScreenDefinition<
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                        >,
                                        readonly [(...)],
                                        "search_result",
                                    >,
                                    (...args: readonly [(...)]) => Effect<(...), (...), (...)>,
                                >;
                            },
                            {
                                recentAccounts: {
                                    at: "recentAccounts";
                                    item: ScreenItemDefinition<
                                        "RecentSearchAccount",
                                        { fullName: string; userId: string; username: string },
                                        { fullName: string; userId: string; username: string },
                                        RecentSearchAccountState,
                                        never,
                                        never,
                                        { openProfile: (self: ..., state: ...) => ... },
                                    >;
                                    key: "userId";
                                };
                            },
                            never,
                        >,
                        [],
                        "button",
                    >,
                    (
                        ...args: [],
                    ) => Effect<
                        AssembledHandle<
                            "SearchInput",
                            "screen",
                            {
                                query: string;
                                rankToken: string;
                                recentAccounts: readonly {
                                    fullName: string;
                                    userId: string;
                                    username: string;
                                }[];
                                results: readonly (
                                    | { __typename: ...; keyword_lazified: ... }
                                    | { __typename: ...; rank_token?: ...; user: ... }
                                    | { __typename: ...; hashtag: ... }
                                )[];
                                session?: {
                                    clientUuidRankToken: string;
                                    searchSessionId: string;
                                    serpSessionId?: (...) | (...);
                                    typeaheadSessionId: string;
                                };
                            },
                            {
                                change: (
                                    self: ScreenHandle,
                                    state: SearchInputState,
                                ) => ScreenDataMember<ScreenDataShape, (...args: ...) => ...>;
                                search: (
                                    self: ScreenHandle,
                                    state: SearchInputState,
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<(...), (...), (...)>,
                                    (...args: ...) => ...,
                                >;
                            },
                            {
                                recentAccounts: {
                                    at: "recentAccounts";
                                    item: ScreenItemDefinition<
                                        "RecentSearchAccount",
                                        { fullName: ...; userId: ...; username: ... },
                                        { fullName: ...; userId: ...; username: ... },
                                        RecentSearchAccountState,
                                        never,
                                        never,
                                        { openProfile: ... },
                                    >;
                                    key: "userId";
                                };
                            },
                            ScreenHandle,
                            "required",
                            true,
                        >,
                        | IgApiError
                        | RequestError
                        | ParseError
                        | TransportError
                        | SchemaError
                        | GraphqlRootFieldMissingError
                        | InvalidSkipOrdinalsError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError,
                        | MobileDevice
                        | GraphqlJsonHttp
                        | MobileApplication
                        | MobileNavigation
                        | ScreenCatalog
                        | ScreenStack,
                    >,
                >;
            },
            Record<never, never>,
            never,
        >;
        FeedTimeline: SwipeableFeedScreen<
            "FeedTimeline",
            "tab",
            { opening?: "cold_start"
            | "tab_open" },
            { nextMaxId?: string; reason: TimelineFeedReason; requestId?: string },
            {
                entries: readonly (
                    | {
                        key: string;
                        media: {
                            code: string;
                            id: string;
                            injected?: { ad_id?: string | number }
                            | null;
                            logging_info_token?: string;
                            media_type: number;
                            pk?: string | number;
                            product_type?: string;
                            taken_at?: number;
                            user?: { pk: string | number; username: string };
                        };
                        position: number;
                        type: "post";
                    }
                    | {
                        key: string;
                        media: {
                            code: string;
                            id: string;
                            injected?: { ad_id?: string | number }
                            | null;
                            logging_info_token?: string;
                            media_type: number;
                            pk?: string | number;
                            product_type?: string;
                            taken_at?: number;
                            user?: { pk: string | number; username: string };
                        };
                        position: number;
                        type: "reel";
                    }
                    | {
                        key: string;
                        media: {
                            code: string;
                            id: string;
                            injected?: { ad_id?: string | number }
                            | null;
                            logging_info_token?: string;
                            media_type: number;
                            pk?: string | number;
                            product_type?: string;
                            taken_at?: number;
                            user?: { pk: string | number; username: string };
                        };
                        position: number;
                        type: "ad";
                    }
                    | {
                        key: string;
                        media: {
                            code: string;
                            id: string;
                            injected?: { ad_id?: string | number }
                            | null;
                            logging_info_token?: string;
                            media_type: number;
                            pk?: string | number;
                            product_type?: string;
                            taken_at?: number;
                            user?: { pk: string | number; username: string };
                        };
                        position: number;
                        source: string;
                        type: "explore_story";
                    }
                    | {
                        key: string;
                        position: number;
                        subtitle: string;
                        title: string;
                        type: "caught-up";
                    }
                    | {
                        key: string;
                        position: number;
                        posts: readonly {
                            id?: string;
                            media_type?: number;
                            user?: { pk: string
                            | number; username: string };
                        }[];
                        title: string;
                        type: "threads";
                    }
                    | {
                        key: string;
                        position: number;
                        reels: readonly {
                            id?: string;
                            is_eof?: boolean
                            | null;
                            media_type?: number;
                            pk?: number;
                            user?: { pk: string | number; username: string };
                        }[];
                        title: string;
                        type: "suggested-reels";
                    }
                )[];
                more_available: boolean;
                next_max_id?: string;
                requestId: string;
            },
            IgApiError
            | RequestError
            | ParseError
            | TransportError
            | ScreenDataError,

                | PlainJsonApiHttp
                | MobileSession
                | MobileDevice
                | MobileApplication
                | NavigationWire,
            | IgApiError
            | RequestError
            | ParseError
            | TransportError
            | InvalidSkipOrdinalsError
            | ScreenDataError
            | ScreenFeedPageError
            | ScreenEnterNavigationError,
            | PlainJsonApiHttp
            | MobileSession
            | MobileDevice
            | MobileApplication
            | NavigationWire
            | MobileNavigation,
            FeedTimelineActions,
            {
                at: "entries";
                by: "type";
                key: "key";
                variants: {
                    ad: ScreenItemDefinition<
                        "FeedTimelineAd",
                        {
                            key: string;
                            media: {
                                code: string;
                                id: string;
                                injected?: { ad_id?: string | number }
                                | null;
                                logging_info_token?: string;
                                media_type: number;
                                pk?: string | number;
                                product_type?: string;
                                taken_at?: number;
                                user?: { pk: string | number; username: string };
                            };
                            position: number;
                            type: "ad";
                        },
                        {
                            key: string;
                            media: {
                                code: string;
                                id: string;
                                injected?: { ad_id?: string | number }
                                | null;
                                logging_info_token?: string;
                                media_type: number;
                                pk?: string | number;
                                product_type?: string;
                                taken_at?: number;
                                user?: { pk: string | number; username: string };
                            };
                            position: number;
                            type: "ad";
                        },
                        Record<never, never>,
                        never,
                        never,
                        {},
                    >;
                    "caught-up": ScreenItemDefinition<
                        "FeedTimelineCaughtUp",
                        {
                            key: string;
                            position: number;
                            subtitle: string;
                            title: string;
                            type: "caught-up";
                        },
                        {
                            key: string;
                            position: number;
                            subtitle: string;
                            title: string;
                            type: "caught-up";
                        },
                        Record<never, never>,
                        never,
                        never,
                        {},
                    >;
                    explore_story: ScreenItemDefinition<
                        "FeedTimelineExploreStory",
                        {
                            key: string;
                            media: {
                                code: string;
                                id: string;
                                injected?: { ad_id?: string | number }
                                | null;
                                logging_info_token?: string;
                                media_type: number;
                                pk?: string | number;
                                product_type?: string;
                                taken_at?: number;
                                user?: { pk: string | number; username: string };
                            };
                            position: number;
                            source: string;
                            type: "explore_story";
                        },
                        {
                            key: string;
                            media: {
                                code: string;
                                id: string;
                                injected?: { ad_id?: string | number }
                                | null;
                                logging_info_token?: string;
                                media_type: number;
                                pk?: string | number;
                                product_type?: string;
                                taken_at?: number;
                                user?: { pk: string | number; username: string };
                            };
                            position: number;
                            source: string;
                            type: "explore_story";
                        },
                        Record<never, never>,
                        never,
                        never,
                        {},
                    >;
                    post: ScreenItemDefinition<
                        "FeedTimelinePost",
                        {
                            key: string;
                            media: {
                                code: string;
                                id: string;
                                injected?: { ad_id?: string | number }
                                | null;
                                logging_info_token?: string;
                                media_type: number;
                                pk?: string | number;
                                product_type?: string;
                                taken_at?: number;
                                user?: { pk: string | number; username: string };
                            };
                            position: number;
                            type: "post";
                        },
                        {
                            key: string;
                            media: {
                                code: string;
                                id: string;
                                injected?: { ad_id?: string | number }
                                | null;
                                logging_info_token?: string;
                                media_type: number;
                                pk?: string | number;
                                product_type?: string;
                                taken_at?: number;
                                user?: { pk: string | number; username: string };
                            };
                            position: number;
                            type: "post";
                        },
                        FeedTimelinePostState,
                        never,
                        never,
                        {
                            like: (
                                self: ScreenHandle,
                                state: FeedTimelinePostState,
                            ) => (
                                ...args: [],
                            ) => Effect<
                                { data: { xig_media_like: ... } }
                                | MediaLikeRestResponse,

                                    | IgApiError
                                    | RequestError
                                    | ParseError
                                    | TransportError
                                    | UserIdNotFoundInState
                                    | SchemaError
                                    | GraphqlRootFieldMissingError
                                    | MobileMediaLikeWireNotDeclaredError
                                    | ScreenEnterConcurrentError
                                    | ScreenNotOnTopError,
                                | PlainJsonApiHttp
                                | Signature
                                | MobileSession
                                | MobileDevice
                                | GraphqlJsonHttp
                                | MobileApplication
                                | NavigationWire
                                | MobileNavigation
                                | ScreenStack,
                            >;
                            open: (
                                self: ScreenHandle,
                                state: FeedTimelinePostState,
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<
                                    ScreenDefinition<
                                        "PostOpenedFromLink",
                                        "screen",
                                        {
                                            carouselIndex?: (...)
                                            | (...);
                                            feedPosition?: (...) | (...) | (...);
                                            loggingInfoToken?: (...) | (...);
                                            mediaId: string;
                                        },
                                        {
                                            carousel?: (...)
                                            | (...);
                                            mediaId: string;
                                            trackingToken: string;
                                        },
                                        PostOpenedFromLinkState,
                                        | IgApiError
                                        | RequestError
                                        | ParseError
                                        | TransportError
                                        | InvalidSkipOrdinalsError
                                        | ScreenDataError
                                        | ScreenEnterNavigationError,
                                        PlainJsonApiHttp
                                        | MobileNavigation,
                                        {
                                            like: (self: ..., state: ...) => ...;
                                            openComments: (self: ..., state: ...) => ...;
                                            repost: (self: ..., state: ...) => ...;
                                        },
                                        Record<never, never>,
                                        never,
                                    >,
                                    [],
                                    "button",
                                >,
                                (
                                    ...args: [],
                                ) => Effect<
                                    AssembledHandle<
                                        "PostOpenedFromLink",
                                        "screen",
                                        { carousel?: ...; mediaId: ...; trackingToken: ... },
                                        { like: ...; openComments: ...; repost: ... },
                                        Record<(...), (...)>,
                                        ScreenHandle,
                                        "required",
                                        true,
                                    >,

                                        | IgApiError
                                        | RequestError
                                        | ParseError
                                        | TransportError
                                        | InvalidSkipOrdinalsError
                                        | ScreenDataError
                                        | ScreenEnterNavigationError
                                        | ScreenEnterConcurrentError
                                        | ScreenEdgeInputError
                                        | ScreenNotOnTopError,
                                    PlainJsonApiHttp
                                    | MobileNavigation
                                    | ScreenCatalog
                                    | ScreenStack,
                                >,
                            >;
                        },
                    >;
                    reel: ScreenItemDefinition<
                        "FeedTimelineReel",
                        {
                            key: string;
                            media: {
                                code: string;
                                id: string;
                                injected?: { ad_id?: string | number }
                                | null;
                                logging_info_token?: string;
                                media_type: number;
                                pk?: string | number;
                                product_type?: string;
                                taken_at?: number;
                                user?: { pk: string | number; username: string };
                            };
                            position: number;
                            type: "reel";
                        },
                        {
                            key: string;
                            media: {
                                code: string;
                                id: string;
                                injected?: { ad_id?: string | number }
                                | null;
                                logging_info_token?: string;
                                media_type: number;
                                pk?: string | number;
                                product_type?: string;
                                taken_at?: number;
                                user?: { pk: string | number; username: string };
                            };
                            position: number;
                            type: "reel";
                        },
                        FeedTimelinePostState,
                        never,
                        never,
                        {
                            open: (
                                self: ScreenHandle,
                                state: FeedTimelinePostState,
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<
                                    ReelsViewerScreenDefinition,
                                    readonly [
                                        {
                                            chainingPosition?: (...)
                                            | (...)
                                            | (...);
                                            chainingSeedMediaId?: (...) | (...);
                                            chainingSessionId?: (...) | (...);
                                            clientPosition?: (...) | (...) | (...);
                                            mediaPctWatched?: (...) | (...) | (...);
                                            rankingSessionId?: (...) | (...);
                                            storyRankingToken?: (...) | (...);
                                        },
                                    ],
                                    "warm_start",
                                >,
                                (
                                    ...args: readonly [
                                        {
                                            chainingPosition?: (...)
                                            | (...)
                                            | (...);
                                            chainingSeedMediaId?: (...) | (...);
                                            chainingSessionId?: (...) | (...);
                                            clientPosition?: (...) | (...) | (...);
                                            mediaPctWatched?: (...) | (...) | (...);
                                            rankingSessionId?: (...) | (...);
                                            storyRankingToken?: (...) | (...);
                                        },
                                    ],
                                ) => Effect<
                                    AssembledHandle<
                                        "ReelsViewer",
                                        "tab",
                                        { entries: ...; next?: ...; opensOnOneReel?: ... },
                                        (...) & (...),
                                        ScreenFeedItems<(...)>,
                                        ScreenHandle,
                                        "required",
                                        true,
                                    >,

                                        | IgApiError
                                        | RequestError
                                        | ParseError
                                        | TransportError
                                        | InvalidSkipOrdinalsError
                                        | ScreenDataError
                                        | ScreenFeedPageError
                                        | ScreenEnterNavigationError
                                        | ScreenEnterConcurrentError
                                        | ScreenEdgeInputError
                                        | ScreenNotOnTopError,
                                    | PlainJsonApiHttp
                                    | Signature
                                    | MobileSession
                                    | MobileDevice
                                    | NavigationWire
                                    | MobileNavigation
                                    | ScreenCatalog
                                    | ScreenStack,
                                >,
                            >;
                        },
                    >;
                    "suggested-reels": ScreenItemDefinition<
                        "FeedTimelineSuggestedReels",
                        {
                            key: string;
                            position: number;
                            reels: readonly {
                                id?: string;
                                is_eof?: boolean
                                | null;
                                media_type?: number;
                                pk?: number;
                                user?: { pk: string | number; username: string };
                            }[];
                            title: string;
                            type: "suggested-reels";
                        },
                        {
                            key: string;
                            position: number;
                            reels: readonly {
                                id?: string;
                                is_eof?: boolean
                                | null;
                                media_type?: number;
                                pk?: number;
                                user?: { pk: string | number; username: string };
                            }[];
                            title: string;
                            type: "suggested-reels";
                        },
                        Record<never, never>,
                        never,
                        never,
                        {},
                    >;
                    threads: ScreenItemDefinition<
                        "FeedTimelineThreads",
                        {
                            key: string;
                            position: number;
                            posts: readonly {
                                id?: string;
                                media_type?: number;
                                user?: { pk: string
                                | number; username: string };
                            }[];
                            title: string;
                            type: "threads";
                        },
                        {
                            key: string;
                            position: number;
                            posts: readonly {
                                id?: string;
                                media_type?: number;
                                user?: { pk: string
                                | number; username: string };
                            }[];
                            title: string;
                            type: "threads";
                        },
                        Record<never, never>,
                        never,
                        never,
                        {},
                    >;
                };
            },
            never,
            never,
        >;
        LoginHomepage: ScreenDefinition<
            "LoginHomepage",
            "screen",
            undefined,
            {
                aac: string;
                attestationChallengeNonce?: string;
                loginEntryPoint: "login-home"
                | "landing-screen";
                oauthQpl: { instanceId: number; markerId: number };
                passwordTextInputId: string;
                qpl: { instanceId: number; markerId: number };
                recoveryTicket?: string & Brand<"RecoveryActionTicket">;
                usernameTextInputId: string;
                waterfallId: string;
            },
            {
                aac: string;
                attestationChallengeNonce?: string;
                loginEntryPoint: "login-home"
                | "landing-screen";
                oauthQpl: { instanceId: number; markerId: number };
                passwordTextInputId: string;
                qpl: { instanceId: number; markerId: number };
                recoveryTicket?: string & Brand<"RecoveryActionTicket">;
                usernameTextInputId: string;
                waterfallId: string;
            },
            | InvalidSkipOrdinalsError
            | ScreenEnterNavigationError
            | LoginHomepageNotLaunchedError,
            MobileNavigation
            | LoginHomepageLaunch,
            {
                createNewAccount: (
                    self: ScreenHandle,
                    state: {
                        aac: string;
                        attestationChallengeNonce?: string;
                        loginEntryPoint: "login-home" | "landing-screen";
                        oauthQpl: { instanceId: number; markerId: number };
                        passwordTextInputId: string;
                        qpl: { instanceId: number; markerId: number };
                        recoveryTicket?: string & Brand<"RecoveryActionTicket">;
                        usernameTextInputId: string;
                        waterfallId: string;
                    },
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<RegistrationPhoneNumberDefinition, [], "button">,
                    (
                        ...args: [],
                    ) => Effect<
                        AssembledHandle<
                            "RegistrationPhoneNumber",
                            "screen",
                            {},
                            {
                                submitPhoneNumber: (
                                    self: ScreenHandle,
                                    state: State,
                                ) => (...args: [phoneNumber: ...]) => Effect<(...), (...), (...)>;
                            },
                            Record<never, never>,
                            ScreenHandle,
                            "required",
                            true,
                        >,

                            | IgNotFoundError
                            | IgRateLimitError
                            | IgSpamError
                            | IgSignupBlockError
                            | IgCheckpointError
                            | IgAccountSuspendedError
                            | IgAccountDisabledError
                            | IgCookieConsentRequiredError
                            | IgLoginRequiredError
                            | IgUserLoggedOutError
                            | IgChallengeWrongCodeError
                            | IgPrivateUserError
                            | IgInactiveUserError
                            | IgSentryBlockError
                            | IgUploadVideoError
                            | IgConfigureVideoError
                            | IgExactUserNotFoundError
                            | IgUserIdNotFoundError
                            | IgNetworkError
                            | IgDecompressionError
                            | IgParseError
                            | IgIpBlockError
                            | IgLoginTwoFactorRequiredError
                            | IgRequestsLimitError
                            | IgNotResolvableError
                            | RequestError
                            | ParseError
                            | TransportError
                            | IgBloks429Error
                            | InvalidSkipOrdinalsError
                            | ScreenDataError
                            | ScreenEnterNavigationError
                            | ScreenEnterConcurrentError
                            | ScreenEdgeInputError
                            | ScreenNotOnTopError,
                        | PlainJsonApiHttp
                        | MobileSession
                        | MobileDevice
                        | GraphqlJsonHttp
                        | MobileApplication
                        | BloksHttp
                        | MobileNavigation
                        | ScreenCatalog
                        | ScreenStack,
                    >,
                >;
                logIn: (
                    self: LoginHomepageFrame,
                    state: {
                        aac: string;
                        attestationChallengeNonce?: string;
                        loginEntryPoint: "login-home" | "landing-screen";
                        oauthQpl: { instanceId: number; markerId: number };
                        passwordTextInputId: string;
                        qpl: { instanceId: number; markerId: number };
                        recoveryTicket?: string & Brand<"RecoveryActionTicket">;
                        usernameTextInputId: string;
                        waterfallId: string;
                    },
                ) => (
                    ...args: [credentials: LoginInput],
                ) => Effect<
                    LoginHomepageAnswer,
                    | IgNotFoundError
                    | IgRateLimitError
                    | IgSpamError
                    | IgSignupBlockError
                    | IgCheckpointError
                    | IgAccountSuspendedError
                    | IgAccountDisabledError
                    | IgCookieConsentRequiredError
                    | IgLoginRequiredError
                    | IgUserLoggedOutError
                    | IgChallengeWrongCodeError
                    | IgPrivateUserError
                    | IgInactiveUserError
                    | IgSentryBlockError
                    | IgUploadVideoError
                    | IgConfigureVideoError
                    | IgExactUserNotFoundError
                    | IgUserIdNotFoundError
                    | IgNetworkError
                    | IgDecompressionError
                    | IgParseError
                    | IgIpBlockError
                    | IgLoginTwoFactorRequiredError
                    | IgRequestsLimitError
                    | IgNotResolvableError
                    | RequestError
                    | ParseError
                    | TransportError
                    | PasswordEncryptionKeysUnavailableError
                    | LoginBloksParseError
                    | LoginBloksRejectedError
                    | LoginTwoFactorEntrypointParseError
                    | LoginAccountRecoveryRequiredError
                    | LoginAccountRecoveryContinueError
                    | IgBloks429Error
                    | IgLoginBadPasswordError
                    | InvalidSkipOrdinalsError
                    | AccountRecoveryBloksIssuedParamsMissingError
                    | ScreenDataError
                    | ScreenFeedPageError
                    | ScreenEnterNavigationError
                    | ScreenEnterConcurrentError
                    | ScreenLaunchFirstScreenError
                    | ScreenLaunchScreenNotInCatalogError
                    | ScreenLaunchSplashNotOnTopError
                    | ScreenLaunchSplashScreenError
                    | AppAlreadyStartedError
                    | ProcessNotSignedInError
                    | AccountRecoveryTicketUnknownError
                    | ScreenEdgeInputError
                    | ScreenNotOnTopError
                    | TwoFactorTicketUnknownError,
                    | PlainJsonApiHttp
                    | MobileSession
                    | MobileDevice
                    | MobileApplication
                    | SessionHeaderParser
                    | BloksHttp
                    | MobileNavigation
                    | AccountRecoveryTickets
                    | ScreenCatalog
                    | ScreenStack
                    | TwoFactorTickets,
                >;
                openApproveFromAnotherDevice: <Self extends ScreenHandle>(
                    self: Self,
                    state: {
                        aac: string;
                        attestationChallengeNonce?: string;
                        loginEntryPoint: "login-home" | "landing-screen";
                        oauthQpl: { instanceId: number; markerId: number };
                        passwordTextInputId: string;
                        qpl: { instanceId: number; markerId: number };
                        recoveryTicket?: string & Brand<"RecoveryActionTicket">;
                        usernameTextInputId: string;
                        waterfallId: string;
                    },
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<
                        ScreenDefinition<
                            "LoginTwoFactorEntrypoint",
                            "screen",
                            undefined,
                            { ticket: string & Brand<"TwoFactorApprovalTicket"> },
                            LoginTwoFactorApproveFromAnotherDeviceState,

                                | InvalidSkipOrdinalsError
                                | ScreenEnterNavigationError
                                | TwoFactorTicketUnknownError,
                            MobileNavigation
                            | TwoFactorTickets,
                            {
                                checkApproval: (
                                    self: ScreenHandle,
                                    state: LoginTwoFactorApproveFromAnotherDeviceState,
                                ) => (
                                    ...args: [],
                                ) => Effect<
                                    LoginTwoFactorApproveFromAnotherDeviceCheck,
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...),
                                    (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...),
                                >;
                                tryAnotherWay: (
                                    self: ScreenHandle,
                                    state: LoginTwoFactorApproveFromAnotherDeviceState,
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<
                                        ScreenDefinition<
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                        >,
                                        [],
                                        "button",
                                    >,
                                    (...args: []) => Effect<(...), (...), (...)>,
                                >;
                            },
                            Record<never, never>,
                            never,
                        >,
                        [],
                        "button",
                    >,
                    (
                        ...args: [],
                    ) => Effect<
                        AssembledHandle<
                            "LoginTwoFactorEntrypoint",
                            "screen",
                            { ticket: string & Brand<"TwoFactorApprovalTicket"> },
                            {
                                checkApproval: (
                                    self: ScreenHandle,
                                    state: LoginTwoFactorApproveFromAnotherDeviceState,
                                ) => (...args: []) => Effect<(...), (...), (...)>;
                                tryAnotherWay: (
                                    self: ScreenHandle,
                                    state: LoginTwoFactorApproveFromAnotherDeviceState,
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<(...), (...), (...)>,
                                    (...args: ...) => ...,
                                >;
                            },
                            Record<never, never>,
                            Self,
                            "required",
                            true,
                        >,

                            | InvalidSkipOrdinalsError
                            | ScreenDataError
                            | ScreenEnterNavigationError
                            | ScreenEnterConcurrentError
                            | ScreenEdgeInputError
                            | ScreenNotOnTopError
                            | TwoFactorTicketUnknownError,
                        MobileNavigation
                        | ScreenCatalog
                        | ScreenStack
                        | TwoFactorTickets,
                    >,
                >;
                openEmailCode: <Self extends ScreenHandle>(
                    self: Self,
                    state: {
                        aac: string;
                        attestationChallengeNonce?: string;
                        loginEntryPoint: "login-home" | "landing-screen";
                        oauthQpl: { instanceId: number; markerId: number };
                        passwordTextInputId: string;
                        qpl: { instanceId: number; markerId: number };
                        recoveryTicket?: string & Brand<"RecoveryActionTicket">;
                        usernameTextInputId: string;
                        waterfallId: string;
                    },
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<
                        ScreenDefinition<
                            "AccountRecoveryEmailCode",
                            "screen",
                            undefined,
                            {
                                maskedContact?: string;
                                ticket: string & Brand<"LastResortCodeEntryTicket">;
                            },
                            {
                                maskedContact?: string;
                                ticket: string & Brand<"LastResortCodeEntryTicket">;
                            },
                            | BloksHttpError
                            | InvalidSkipOrdinalsError
                            | AccountRecoveryBloksIssuedParamsMissingError
                            | ScreenEnterNavigationError
                            | AccountRecoveryTicketUnknownError,
                            | MobileSession
                            | MobileDevice
                            | MobileApplication
                            | BloksHttp
                            | MobileNavigation
                            | AccountRecoveryTickets,
                            {
                                requestNewCode: (
                                    self: ScreenHandle,
                                    state: { maskedContact?: string; ticket: string & Brand<(...)> },
                                ) => (
                                    ...args: [],
                                ) => Effect<
                                    (...)
                                    | (...),

                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...)
                                        | (...),
                                    (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...),
                                >;
                                submitCode: (
                                    self: ScreenHandle,
                                    state: { maskedContact?: string; ticket: string & Brand<(...)> },
                                ) => (
                                    ...args: [code: string],
                                ) => Effect<
                                    AccountRecoveryFirstScreen,
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...),
                                    (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...),
                                >;
                            },
                            Record<never, never>,
                            never,
                        >,
                        [],
                        "button",
                    >,
                    (
                        ...args: [],
                    ) => Effect<
                        AssembledHandle<
                            "AccountRecoveryEmailCode",
                            "screen",
                            {
                                maskedContact?: string;
                                ticket: string & Brand<"LastResortCodeEntryTicket">;
                            },
                            {
                                requestNewCode: (
                                    self: ScreenHandle,
                                    state: { maskedContact?: (...) | (...); ticket: (...) & (...) },
                                ) => (...args: []) => Effect<(...), (...), (...)>;
                                submitCode: (
                                    self: ScreenHandle,
                                    state: { maskedContact?: (...) | (...); ticket: (...) & (...) },
                                ) => (...args: [code: ...]) => Effect<(...), (...), (...)>;
                            },
                            Record<never, never>,
                            Self,
                            "required",
                            true,
                        >,

                            | BloksHttpError
                            | InvalidSkipOrdinalsError
                            | AccountRecoveryBloksIssuedParamsMissingError
                            | ScreenDataError
                            | ScreenEnterNavigationError
                            | ScreenEnterConcurrentError
                            | AccountRecoveryTicketUnknownError
                            | ScreenEdgeInputError
                            | ScreenNotOnTopError,
                        | MobileSession
                        | MobileDevice
                        | MobileApplication
                        | BloksHttp
                        | MobileNavigation
                        | AccountRecoveryTickets
                        | ScreenCatalog
                        | ScreenStack,
                    >,
                >;
                openMethodPicker: <Self extends ScreenHandle>(
                    self: Self,
                    state: {
                        aac: string;
                        attestationChallengeNonce?: string;
                        loginEntryPoint: "login-home" | "landing-screen";
                        oauthQpl: { instanceId: number; markerId: number };
                        passwordTextInputId: string;
                        qpl: { instanceId: number; markerId: number };
                        recoveryTicket?: string & Brand<"RecoveryActionTicket">;
                        usernameTextInputId: string;
                        waterfallId: string;
                    },
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<
                        ScreenDefinition<
                            "LoginTwoFactorMethodPicker",
                            "screen",
                            { ticket?: string & Brand<"TwoFactorApprovalTicket"> },
                            {
                                offeredMethods: readonly (
                                    | "approve_from_another_device"
                                    | "whatsapp"
                                    | "totp"
                                    | "sms"
                                    | "backup_codes"
                                )[];
                                preselected?: | "approve_from_another_device"
                                | "whatsapp"
                                | "totp"
                                | "sms"
                                | "backup_codes";
                                ticket: string & Brand<"TwoFactorPickerTicket">;
                            },
                            LoginTwoFactorChooseMethodState,
                            | BloksHttpError
                            | InvalidSkipOrdinalsError
                            | ScreenEnterNavigationError
                            | TwoFactorTicketUnknownError,
                            | MobileDevice
                            | MobileApplication
                            | BloksHttp
                            | MobileNavigation
                            | TwoFactorTickets,
                            {
                                chooseAuthenticationApp: (
                                    self: ScreenHandle,
                                    state: LoginTwoFactorChooseMethodState,
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<
                                        ScreenDefinition<
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                        >,
                                        [],
                                        "button",
                                    >,
                                    (...args: []) => Effect<(...), (...), (...)>,
                                >;
                            },
                            Record<never, never>,
                            never,
                        >,
                        [],
                        "button",
                    >,
                    (
                        ...args: [],
                    ) => Effect<
                        AssembledHandle<
                            "LoginTwoFactorMethodPicker",
                            "screen",
                            {
                                offeredMethods: readonly (
                                    | "approve_from_another_device"
                                    | "whatsapp"
                                    | "totp"
                                    | "sms"
                                    | "backup_codes"
                                )[];
                                preselected?: | "approve_from_another_device"
                                | "whatsapp"
                                | "totp"
                                | "sms"
                                | "backup_codes";
                                ticket: string & Brand<"TwoFactorPickerTicket">;
                            },
                            {
                                chooseAuthenticationApp: (
                                    self: ScreenHandle,
                                    state: LoginTwoFactorChooseMethodState,
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<(...), (...), (...)>,
                                    (...args: ...) => ...,
                                >;
                            },
                            Record<never, never>,
                            Self,
                            "required",
                            true,
                        >,

                            | BloksHttpError
                            | InvalidSkipOrdinalsError
                            | ScreenDataError
                            | ScreenEnterNavigationError
                            | ScreenEnterConcurrentError
                            | ScreenEdgeInputError
                            | ScreenNotOnTopError
                            | TwoFactorTicketUnknownError,
                        | MobileDevice
                        | MobileApplication
                        | BloksHttp
                        | MobileNavigation
                        | ScreenCatalog
                        | ScreenStack
                        | TwoFactorTickets,
                    >,
                >;
                recoverPassword: (
                    self: ScreenHandle,
                    state: {
                        aac: string;
                        attestationChallengeNonce?: string;
                        loginEntryPoint: "login-home" | "landing-screen";
                        oauthQpl: { instanceId: number; markerId: number };
                        passwordTextInputId: string;
                        qpl: { instanceId: number; markerId: number };
                        recoveryTicket?: string & Brand<"RecoveryActionTicket">;
                        usernameTextInputId: string;
                        waterfallId: string;
                    },
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<
                        ScreenDefinition<
                            "AccountRecoverySearch",
                            "screen",
                            { aac: string; ticket?: string & Brand<"RecoveryActionTicket"> },
                            {
                                aac: string;
                                searchScreenType: string;
                                searchTicket: string & Brand<"SearchTicket">;
                                textInputId: string;
                                waterfallId: string;
                            },
                            {
                                aac: string;
                                searchScreenType: string;
                                searchTicket: string & Brand<"SearchTicket">;
                                textInputId: string;
                                waterfallId: string;
                            },
                            | BloksHttpError
                            | InvalidSkipOrdinalsError
                            | AccountRecoveryBloksIssuedParamsMissingError
                            | ScreenEnterNavigationError
                            | AccountRecoveryTicketUnknownError,
                            | MobileDevice
                            | MobileApplication
                            | BloksHttp
                            | MobileNavigation
                            | AccountRecoveryTickets,
                            {
                                findAccount: (
                                    self: ScreenHandle,
                                    state: {
                                        aac: string;
                                        searchScreenType: string;
                                        searchTicket: string & Brand<(...)>;
                                        textInputId: string;
                                        waterfallId: string;
                                    },
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<
                                        ScreenDefinition<
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                        >,
                                        readonly [(...)],
                                        "button",
                                    >,
                                    (...args: readonly [(...)]) => Effect<(...), (...), (...)>,
                                >;
                            },
                            Record<never, never>,
                            never,
                        >,
                        [],
                        "button",
                    >,
                    (
                        ...args: [],
                    ) => Effect<
                        AssembledHandle<
                            "AccountRecoverySearch",
                            "screen",
                            {
                                aac: string;
                                searchScreenType: string;
                                searchTicket: string & Brand<"SearchTicket">;
                                textInputId: string;
                                waterfallId: string;
                            },
                            {
                                findAccount: (
                                    self: ScreenHandle,
                                    state: {
                                        aac: string;
                                        searchScreenType: string;
                                        searchTicket: (...) & (...);
                                        textInputId: string;
                                        waterfallId: string;
                                    },
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<(...), (...), (...)>,
                                    (...args: ...) => ...,
                                >;
                            },
                            Record<never, never>,
                            ScreenHandle,
                            "required",
                            true,
                        >,

                            | BloksHttpError
                            | InvalidSkipOrdinalsError
                            | AccountRecoveryBloksIssuedParamsMissingError
                            | ScreenDataError
                            | ScreenEnterNavigationError
                            | ScreenEnterConcurrentError
                            | AccountRecoveryTicketUnknownError
                            | ScreenEdgeInputError
                            | ScreenNotOnTopError,
                        | MobileDevice
                        | MobileApplication
                        | BloksHttp
                        | MobileNavigation
                        | AccountRecoveryTickets
                        | ScreenCatalog
                        | ScreenStack,
                    >,
                >;
            },
            Record<never, never>,
            never,
        >;
        LoginTwoFactorEnterTotpCode: ScreenDefinition<
            "LoginTwoFactorEnterTotpCode",
            "screen",
            { ticket: string & Brand<"TwoFactorPickerTicket"> },
            { ticket: string & Brand<"TwoFactorCodeTicket"> },
            LoginTwoFactorAuthenticationAppCodeState,

                | BloksHttpError
                | InvalidSkipOrdinalsError
                | TwoFactorBloksIssuedIdMissingError
                | ScreenEnterNavigationError
                | TwoFactorTicketUnknownError,
            | MobileDevice
            | MobileApplication
            | BloksHttp
            | MobileNavigation
            | TwoFactorTickets,
            {
                checkApproval: (
                    self: ScreenHandle,
                    state: LoginTwoFactorAuthenticationAppCodeState,
                ) => (
                    ...args: [],
                ) => Effect<
                    LoginTwoFactorAuthenticationAppCodeCheck,
                    | IgNotFoundError
                    | IgRateLimitError
                    | IgSpamError
                    | IgSignupBlockError
                    | IgCheckpointError
                    | IgAccountSuspendedError
                    | IgAccountDisabledError
                    | IgCookieConsentRequiredError
                    | IgLoginRequiredError
                    | IgUserLoggedOutError
                    | IgChallengeWrongCodeError
                    | IgPrivateUserError
                    | IgInactiveUserError
                    | IgSentryBlockError
                    | IgUploadVideoError
                    | IgConfigureVideoError
                    | IgExactUserNotFoundError
                    | IgUserIdNotFoundError
                    | IgNetworkError
                    | IgDecompressionError
                    | IgParseError
                    | IgIpBlockError
                    | IgLoginTwoFactorRequiredError
                    | IgRequestsLimitError
                    | IgNotResolvableError
                    | RequestError
                    | ParseError
                    | TransportError
                    | LoginBloksParseError
                    | IgBloks429Error
                    | InvalidSkipOrdinalsError
                    | TwoFactorBloksIssuedIdMissingError
                    | ScreenDataError
                    | ScreenFeedPageError
                    | ScreenEnterNavigationError
                    | ScreenEnterConcurrentError
                    | ScreenLaunchFirstScreenError
                    | ScreenLaunchScreenNotInCatalogError
                    | ScreenLaunchSplashNotOnTopError
                    | ScreenLaunchSplashScreenError
                    | AppAlreadyStartedError
                    | ProcessNotSignedInError
                    | ScreenNotOnTopError
                    | TwoFactorTicketUnknownError
                    | LoginTwoFactorApprovalDeclinedError,
                    | MobileSession
                    | MobileDevice
                    | MobileApplication
                    | SessionHeaderParser
                    | BloksHttp
                    | MobileNavigation
                    | ScreenStack
                    | TwoFactorTickets,
                >;
                submitCode: (
                    self: ScreenHandle,
                    state: LoginTwoFactorAuthenticationAppCodeState,
                ) => (
                    ...args: [code: string],
                ) => Effect<
                    AppFirstScreen,
                    | IgNotFoundError
                    | IgRateLimitError
                    | IgSpamError
                    | IgSignupBlockError
                    | IgCheckpointError
                    | IgAccountSuspendedError
                    | IgAccountDisabledError
                    | IgCookieConsentRequiredError
                    | IgLoginRequiredError
                    | IgUserLoggedOutError
                    | IgChallengeWrongCodeError
                    | IgPrivateUserError
                    | IgInactiveUserError
                    | IgSentryBlockError
                    | IgUploadVideoError
                    | IgConfigureVideoError
                    | IgExactUserNotFoundError
                    | IgUserIdNotFoundError
                    | IgNetworkError
                    | IgDecompressionError
                    | IgParseError
                    | IgIpBlockError
                    | IgLoginTwoFactorRequiredError
                    | IgRequestsLimitError
                    | IgNotResolvableError
                    | RequestError
                    | ParseError
                    | TransportError
                    | LoginBloksParseError
                    | IgBloks429Error
                    | InvalidSkipOrdinalsError
                    | TwoFactorBloksIssuedIdMissingError
                    | TwoFactorBloksLoginResponseNotFoundError
                    | ScreenDataError
                    | ScreenFeedPageError
                    | ScreenEnterNavigationError
                    | ScreenEnterConcurrentError
                    | ScreenLaunchFirstScreenError
                    | ScreenLaunchScreenNotInCatalogError
                    | ScreenLaunchSplashNotOnTopError
                    | ScreenLaunchSplashScreenError
                    | AppAlreadyStartedError
                    | ProcessNotSignedInError
                    | ScreenNotOnTopError
                    | TwoFactorTicketUnknownError
                    | LoginTwoFactorAuthenticationAppCodeRejectedError,
                    | MobileSession
                    | MobileDevice
                    | MobileApplication
                    | SessionHeaderParser
                    | BloksHttp
                    | MobileNavigation
                    | ScreenStack
                    | TwoFactorTickets,
                >;
            },
            Record<never, never>,
            never,
        >;
        LoginTwoFactorEntrypoint: ScreenDefinition<
            "LoginTwoFactorEntrypoint",
            "screen",
            undefined,
            { ticket: string & Brand<"TwoFactorApprovalTicket"> },
            LoginTwoFactorApproveFromAnotherDeviceState,

                | InvalidSkipOrdinalsError
                | ScreenEnterNavigationError
                | TwoFactorTicketUnknownError,
            MobileNavigation
            | TwoFactorTickets,
            {
                checkApproval: (
                    self: ScreenHandle,
                    state: LoginTwoFactorApproveFromAnotherDeviceState,
                ) => (
                    ...args: [],
                ) => Effect<
                    LoginTwoFactorApproveFromAnotherDeviceCheck,
                    | IgNotFoundError
                    | IgRateLimitError
                    | IgSpamError
                    | IgSignupBlockError
                    | IgCheckpointError
                    | IgAccountSuspendedError
                    | IgAccountDisabledError
                    | IgCookieConsentRequiredError
                    | IgLoginRequiredError
                    | IgUserLoggedOutError
                    | IgChallengeWrongCodeError
                    | IgPrivateUserError
                    | IgInactiveUserError
                    | IgSentryBlockError
                    | IgUploadVideoError
                    | IgConfigureVideoError
                    | IgExactUserNotFoundError
                    | IgUserIdNotFoundError
                    | IgNetworkError
                    | IgDecompressionError
                    | IgParseError
                    | IgIpBlockError
                    | IgLoginTwoFactorRequiredError
                    | IgRequestsLimitError
                    | IgNotResolvableError
                    | RequestError
                    | ParseError
                    | TransportError
                    | LoginBloksParseError
                    | IgBloks429Error
                    | InvalidSkipOrdinalsError
                    | ScreenDataError
                    | ScreenFeedPageError
                    | ScreenEnterNavigationError
                    | ScreenEnterConcurrentError
                    | ScreenLaunchFirstScreenError
                    | ScreenLaunchScreenNotInCatalogError
                    | ScreenLaunchSplashNotOnTopError
                    | ScreenLaunchSplashScreenError
                    | AppAlreadyStartedError
                    | ProcessNotSignedInError
                    | ScreenNotOnTopError
                    | TwoFactorTicketUnknownError
                    | LoginTwoFactorApprovalDeclinedError,
                    | MobileSession
                    | MobileDevice
                    | MobileApplication
                    | SessionHeaderParser
                    | BloksHttp
                    | MobileNavigation
                    | ScreenStack
                    | TwoFactorTickets,
                >;
                tryAnotherWay: (
                    self: ScreenHandle,
                    state: LoginTwoFactorApproveFromAnotherDeviceState,
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<
                        ScreenDefinition<
                            "LoginTwoFactorMethodPicker",
                            "screen",
                            { ticket?: string & Brand<"TwoFactorApprovalTicket"> },
                            {
                                offeredMethods: readonly (
                                    | "approve_from_another_device"
                                    | "whatsapp"
                                    | "totp"
                                    | "sms"
                                    | "backup_codes"
                                )[];
                                preselected?: | "approve_from_another_device"
                                | "whatsapp"
                                | "totp"
                                | "sms"
                                | "backup_codes";
                                ticket: string & Brand<"TwoFactorPickerTicket">;
                            },
                            LoginTwoFactorChooseMethodState,
                            | BloksHttpError
                            | InvalidSkipOrdinalsError
                            | ScreenEnterNavigationError
                            | TwoFactorTicketUnknownError,
                            | MobileDevice
                            | MobileApplication
                            | BloksHttp
                            | MobileNavigation
                            | TwoFactorTickets,
                            {
                                chooseAuthenticationApp: (
                                    self: ScreenHandle,
                                    state: LoginTwoFactorChooseMethodState,
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<
                                        ScreenDefinition<
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                        >,
                                        [],
                                        "button",
                                    >,
                                    (...args: []) => Effect<(...), (...), (...)>,
                                >;
                            },
                            Record<never, never>,
                            never,
                        >,
                        [],
                        "button",
                    >,
                    (
                        ...args: [],
                    ) => Effect<
                        AssembledHandle<
                            "LoginTwoFactorMethodPicker",
                            "screen",
                            {
                                offeredMethods: readonly (
                                    | "approve_from_another_device"
                                    | "whatsapp"
                                    | "totp"
                                    | "sms"
                                    | "backup_codes"
                                )[];
                                preselected?: | "approve_from_another_device"
                                | "whatsapp"
                                | "totp"
                                | "sms"
                                | "backup_codes";
                                ticket: string & Brand<"TwoFactorPickerTicket">;
                            },
                            {
                                chooseAuthenticationApp: (
                                    self: ScreenHandle,
                                    state: LoginTwoFactorChooseMethodState,
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<(...), (...), (...)>,
                                    (...args: ...) => ...,
                                >;
                            },
                            Record<never, never>,
                            ScreenHandle,
                            "required",
                            true,
                        >,

                            | BloksHttpError
                            | InvalidSkipOrdinalsError
                            | ScreenDataError
                            | ScreenEnterNavigationError
                            | ScreenEnterConcurrentError
                            | ScreenEdgeInputError
                            | ScreenNotOnTopError
                            | TwoFactorTicketUnknownError,
                        | MobileDevice
                        | MobileApplication
                        | BloksHttp
                        | MobileNavigation
                        | ScreenCatalog
                        | ScreenStack
                        | TwoFactorTickets,
                    >,
                >;
            },
            Record<never, never>,
            never,
        >;
        LoginTwoFactorMethodPicker: ScreenDefinition<
            "LoginTwoFactorMethodPicker",
            "screen",
            { ticket?: string & Brand<"TwoFactorApprovalTicket"> },
            {
                offeredMethods: readonly (
                    | "approve_from_another_device"
                    | "whatsapp"
                    | "totp"
                    | "sms"
                    | "backup_codes"
                )[];
                preselected?: | "approve_from_another_device"
                | "whatsapp"
                | "totp"
                | "sms"
                | "backup_codes";
                ticket: string & Brand<"TwoFactorPickerTicket">;
            },
            LoginTwoFactorChooseMethodState,
            | BloksHttpError
            | InvalidSkipOrdinalsError
            | ScreenEnterNavigationError
            | TwoFactorTicketUnknownError,
            | MobileDevice
            | MobileApplication
            | BloksHttp
            | MobileNavigation
            | TwoFactorTickets,
            {
                chooseAuthenticationApp: (
                    self: ScreenHandle,
                    state: LoginTwoFactorChooseMethodState,
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<
                        ScreenDefinition<
                            "LoginTwoFactorEnterTotpCode",
                            "screen",
                            { ticket: string & Brand<"TwoFactorPickerTicket"> },
                            { ticket: string & Brand<"TwoFactorCodeTicket"> },
                            LoginTwoFactorAuthenticationAppCodeState,

                                | BloksHttpError
                                | InvalidSkipOrdinalsError
                                | TwoFactorBloksIssuedIdMissingError
                                | ScreenEnterNavigationError
                                | TwoFactorTicketUnknownError,
                            | MobileDevice
                            | MobileApplication
                            | BloksHttp
                            | MobileNavigation
                            | TwoFactorTickets,
                            {
                                checkApproval: (
                                    self: ScreenHandle,
                                    state: LoginTwoFactorAuthenticationAppCodeState,
                                ) => (
                                    ...args: [],
                                ) => Effect<
                                    LoginTwoFactorAuthenticationAppCodeCheck,
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...),
                                    (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...),
                                >;
                                submitCode: (
                                    self: ScreenHandle,
                                    state: LoginTwoFactorAuthenticationAppCodeState,
                                ) => (
                                    ...args: [code: string],
                                ) => Effect<
                                    AppFirstScreen,
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...),
                                    (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...),
                                >;
                            },
                            Record<never, never>,
                            never,
                        >,
                        [],
                        "button",
                    >,
                    (
                        ...args: [],
                    ) => Effect<
                        AssembledHandle<
                            "LoginTwoFactorEnterTotpCode",
                            "screen",
                            { ticket: string & Brand<"TwoFactorCodeTicket"> },
                            {
                                checkApproval: (
                                    self: ScreenHandle,
                                    state: LoginTwoFactorAuthenticationAppCodeState,
                                ) => (...args: []) => Effect<(...), (...), (...)>;
                                submitCode: (
                                    self: ScreenHandle,
                                    state: LoginTwoFactorAuthenticationAppCodeState,
                                ) => (...args: [code: ...]) => Effect<(...), (...), (...)>;
                            },
                            Record<never, never>,
                            ScreenHandle,
                            "required",
                            true,
                        >,

                            | BloksHttpError
                            | InvalidSkipOrdinalsError
                            | TwoFactorBloksIssuedIdMissingError
                            | ScreenDataError
                            | ScreenEnterNavigationError
                            | ScreenEnterConcurrentError
                            | ScreenEdgeInputError
                            | ScreenNotOnTopError
                            | TwoFactorTicketUnknownError,
                        | MobileDevice
                        | MobileApplication
                        | BloksHttp
                        | MobileNavigation
                        | ScreenCatalog
                        | ScreenStack
                        | TwoFactorTickets,
                    >,
                >;
            },
            Record<never, never>,
            never,
        >;
        MediaComments: ScreenDefinition<
            "MediaComments",
            "screen",
            | {
                carouselIndex?: string
                | number;
                commentSessionId?: string;
                feedPosition?: string | number;
                mediaId: string;
                surface: "feed";
            }
            | {
                chainingPosition?: string
                | number;
                chainingSeedMediaId?: string;
                chainingSessionId?: string;
                clientPosition?: string | number;
                commentSessionId?: string;
                mediaId: string;
                rankingSessionId?: string;
                storyRankingToken?: string;
                surface: "reels";
            },
            {
                commentSessionId: string;
                createdMediaNoteIds: readonly string[];
                mediaId: string;
                surface: "feed"
                | "reels";
            },
            MediaCommentsState,
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            {
                comment: (
                    self: ScreenHandle,
                    state: MediaCommentsState,
                ) => (
                    ...args: [text: string, options?: CommentOptions],
                ) => Effect<
                    MediaCommentResponse,
                    | IgApiError
                    | RequestError
                    | ParseError
                    | TransportError
                    | UserIdNotFoundInState
                    | ScreenEnterConcurrentError
                    | ScreenNotOnTopError,
                    | PlainJsonApiHttp
                    | Signature
                    | MobileSession
                    | MobileDevice
                    | MobileApplication
                    | NavigationWire
                    | MobileNavigation
                    | ScreenStack,
                >;
            },
            Record<never, never>,
            never,
        >;
        MyProfile: MyProfileDefinition;
        PostOpenedFromLink: ScreenDefinition<
            "PostOpenedFromLink",
            "screen",
            {
                carouselIndex?: number;
                feedPosition?: string
                | number;
                loggingInfoToken?: string;
                mediaId: string;
            },
            {
                carousel?: {
                    index: number;
                    noteMediaId: string;
                    pk: string;
                    size?: number;
                };
                mediaId: string;
                trackingToken: string;
            },
            PostOpenedFromLinkState,
            | IgApiError
            | RequestError
            | ParseError
            | TransportError
            | InvalidSkipOrdinalsError
            | ScreenDataError
            | ScreenEnterNavigationError,
            PlainJsonApiHttp
            | MobileNavigation,
            {
                like: (
                    self: ScreenHandle,
                    state: PostOpenedFromLinkState,
                ) => (
                    ...args: [],
                ) => Effect<
                    | {
                        data: {
                            xig_media_like: {
                                media: {
                                    __typename?: (...)
                                    | (...);
                                    has_liked: boolean;
                                    id: string;
                                    strong_id__?: (...) | (...);
                                };
                            };
                        };
                    }
                    | MediaLikeRestResponse,
                    | IgApiError
                    | RequestError
                    | ParseError
                    | TransportError
                    | UserIdNotFoundInState
                    | SchemaError
                    | GraphqlRootFieldMissingError
                    | MobileMediaLikeWireNotDeclaredError
                    | ScreenEnterConcurrentError
                    | ScreenNotOnTopError,
                    | PlainJsonApiHttp
                    | Signature
                    | MobileSession
                    | MobileDevice
                    | GraphqlJsonHttp
                    | MobileApplication
                    | NavigationWire
                    | MobileNavigation
                    | ScreenStack,
                >;
                openComments: (
                    self: ScreenHandle,
                    state: PostOpenedFromLinkState,
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<
                        ScreenDefinition<
                            "MediaComments",
                            "screen",
                            | {
                                carouselIndex?: string
                                | number;
                                commentSessionId?: string;
                                feedPosition?: string | number;
                                mediaId: string;
                                surface: "feed";
                            }
                            | {
                                chainingPosition?: string
                                | number;
                                chainingSeedMediaId?: string;
                                chainingSessionId?: string;
                                clientPosition?: string | number;
                                commentSessionId?: string;
                                mediaId: string;
                                rankingSessionId?: string;
                                storyRankingToken?: string;
                                surface: "reels";
                            },
                            {
                                commentSessionId: string;
                                createdMediaNoteIds: readonly string[];
                                mediaId: string;
                                surface: "feed"
                                | "reels";
                            },
                            MediaCommentsState,
                            InvalidSkipOrdinalsError
                            | ScreenEnterNavigationError,
                            MobileNavigation,
                            {
                                comment: (
                                    self: ScreenHandle,
                                    state: MediaCommentsState,
                                ) => (
                                    ...args: [text: string, options?: (...) | (...)],
                                ) => Effect<
                                    MediaCommentResponse,
                                    (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...),
                                    (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...),
                                >;
                            },
                            Record<never, never>,
                            never,
                        >,
                        readonly [{ commentSessionId?: string }],
                        "button",
                    >,
                    (
                        ...args: readonly [{ commentSessionId?: string }],
                    ) => Effect<
                        AssembledHandle<
                            "MediaComments",
                            "screen",
                            {
                                commentSessionId: string;
                                createdMediaNoteIds: readonly string[];
                                mediaId: string;
                                surface: "feed"
                                | "reels";
                            },
                            {
                                comment: (
                                    self: ScreenHandle,
                                    state: MediaCommentsState,
                                ) => (
                                    ...args: [text: ..., options?: ...],
                                ) => Effect<(...), (...), (...)>;
                            },
                            Record<never, never>,
                            ScreenHandle,
                            "required",
                            true,
                        >,

                            | InvalidSkipOrdinalsError
                            | ScreenDataError
                            | ScreenEnterNavigationError
                            | ScreenEnterConcurrentError
                            | ScreenEdgeInputError
                            | ScreenNotOnTopError,
                        MobileNavigation
                        | ScreenCatalog
                        | ScreenStack,
                    >,
                >;
                repost: (
                    self: ScreenHandle,
                    state: PostOpenedFromLinkState,
                ) => (
                    ...args: [text?: string],
                ) => Effect<
                    { note: MediaCreateNoteResponse; trackingToken: string },

                        | IgApiError
                        | RequestError
                        | ParseError
                        | TransportError
                        | UserIdNotFoundInState
                        | SchemaError
                        | GraphqlRootFieldMissingError
                        | MobileMediaLikeWireNotDeclaredError
                        | MobileMediaRepostWireNotDeclaredError
                        | MediaRepostTextTooLongError
                        | ScreenEnterConcurrentError
                        | MediaRepostTextNotAcceptedError
                        | ScreenNotOnTopError,
                    | PlainJsonApiHttp
                    | Signature
                    | MobileSession
                    | MobileDevice
                    | GraphqlJsonHttp
                    | MobileApplication
                    | NavigationWire
                    | MobileNavigation
                    | ScreenStack,
                >;
            },
            Record<never, never>,
            never,
        >;
        ProfilePostsFeed: SwipeableFeedScreen<
            "ProfilePostsFeed",
            "screen",
            {
                firstMediaId: string;
                firstPosition: number;
                followsAuthor?: boolean;
                media: readonly {
                    authorId?: string;
                    dashManifest?: string;
                    id: string;
                    mediaType?: number;
                    takenAt?: number;
                    trackingToken?: string;
                    videoDuration?: number;
                }[];
                pageCursor?: { gridItemsCursor: string; maxId: string };
                userId: string;
            },
            ProfilePostsFeedCursor,
            {
                media: readonly {
                    authorId?: string;
                    dashManifest?: string;
                    followsAuthor?: boolean;
                    mediaId: string;
                    mediaType: 0
                    | 1
                    | 2
                    | 8;
                    position: number;
                    takenAt?: number;
                    trackingToken?: string;
                    videoDuration?: number;
                }[];
                next?: { gridItemsCursor: string; maxId: string };
                nextPosition: number;
            },
            | IgApiError
            | RequestError
            | ParseError
            | TransportError
            | SchemaError
            | GraphqlRootFieldMissingError,
            GraphqlJsonHttp
            | MobileApplication,

                | IgApiError
                | RequestError
                | ParseError
                | TransportError
                | SchemaError
                | GraphqlRootFieldMissingError
                | InvalidSkipOrdinalsError
                | ScreenDataError
                | ScreenFeedPageError
                | ScreenEnterNavigationError,
            GraphqlJsonHttp
            | MobileApplication
            | MobileNavigation,
            {},
            {
                at: "media";
                by: "mediaType";
                key: "mediaId";
                variants: {
                    "0": ScreenItemDefinition<
                        "ProfilePostsFeedMedia",
                        {
                            authorId?: string;
                            dashManifest?: string;
                            followsAuthor?: boolean;
                            mediaId: string;
                            mediaType: 0
                            | 1
                            | 2
                            | 8;
                            position: number;
                            takenAt?: number;
                            trackingToken?: string;
                            videoDuration?: number;
                        },
                        {
                            authorId?: string;
                            dashManifest?: string;
                            followsAuthor?: boolean;
                            mediaId: string;
                            mediaType: 0
                            | 1
                            | 2
                            | 8;
                            position: number;
                            takenAt?: number;
                            trackingToken?: string;
                            videoDuration?: number;
                        },
                        ProfilePostsFeedMediaState,
                        never,
                        never,
                        {
                            like: (
                                self: ScreenHandle,
                                state: ProfilePostsFeedMediaState,
                            ) => (
                                ...args: [],
                            ) => Effect<
                                { data: { xig_media_like: ... } }
                                | MediaLikeRestResponse,

                                    | IgApiError
                                    | RequestError
                                    | ParseError
                                    | TransportError
                                    | UserIdNotFoundInState
                                    | SchemaError
                                    | GraphqlRootFieldMissingError
                                    | MobileMediaLikeWireNotDeclaredError
                                    | ScreenEnterConcurrentError
                                    | ScreenNotOnTopError,
                                | PlainJsonApiHttp
                                | Signature
                                | MobileSession
                                | MobileDevice
                                | GraphqlJsonHttp
                                | MobileApplication
                                | NavigationWire
                                | MobileNavigation
                                | ScreenStack,
                            >;
                        },
                    >;
                    "1": ScreenItemDefinition<
                        "ProfilePostsFeedPhoto",
                        {
                            authorId?: string;
                            dashManifest?: string;
                            followsAuthor?: boolean;
                            mediaId: string;
                            mediaType: 0
                            | 1
                            | 2
                            | 8;
                            position: number;
                            takenAt?: number;
                            trackingToken?: string;
                            videoDuration?: number;
                        },
                        {
                            authorId?: string;
                            dashManifest?: string;
                            followsAuthor?: boolean;
                            mediaId: string;
                            mediaType: 0
                            | 1
                            | 2
                            | 8;
                            position: number;
                            takenAt?: number;
                            trackingToken?: string;
                            videoDuration?: number;
                        },
                        ProfilePostsFeedMediaState,
                        never,
                        never,
                        {
                            like: (
                                self: ScreenHandle,
                                state: ProfilePostsFeedMediaState,
                            ) => (
                                ...args: [],
                            ) => Effect<
                                { data: { xig_media_like: ... } }
                                | MediaLikeRestResponse,

                                    | IgApiError
                                    | RequestError
                                    | ParseError
                                    | TransportError
                                    | UserIdNotFoundInState
                                    | SchemaError
                                    | GraphqlRootFieldMissingError
                                    | MobileMediaLikeWireNotDeclaredError
                                    | ScreenEnterConcurrentError
                                    | ScreenNotOnTopError,
                                | PlainJsonApiHttp
                                | Signature
                                | MobileSession
                                | MobileDevice
                                | GraphqlJsonHttp
                                | MobileApplication
                                | NavigationWire
                                | MobileNavigation
                                | ScreenStack,
                            >;
                        },
                    >;
                    "2": ScreenItemDefinition<
                        "ProfilePostsFeedVideo",
                        {
                            authorId?: string;
                            dashManifest?: string;
                            followsAuthor?: boolean;
                            mediaId: string;
                            mediaType: 0
                            | 1
                            | 2
                            | 8;
                            position: number;
                            takenAt?: number;
                            trackingToken?: string;
                            videoDuration?: number;
                        },
                        {
                            authorId?: string;
                            dashManifest?: string;
                            followsAuthor?: boolean;
                            mediaId: string;
                            mediaType: 0
                            | 1
                            | 2
                            | 8;
                            position: number;
                            takenAt?: number;
                            trackingToken?: string;
                            videoDuration?: number;
                        },
                        ProfilePostsFeedVideoState,
                        never,
                        | MobileSession
                        | MobileDevice
                        | NavigationWire
                        | MobileTelemetry
                        | MobileNetworkWire,
                        {
                            like: (
                                self: ScreenHandle,
                                state: ProfilePostsFeedMediaState,
                            ) => (
                                ...args: [],
                            ) => Effect<
                                { data: { xig_media_like: ... } }
                                | MediaLikeRestResponse,

                                    | IgApiError
                                    | RequestError
                                    | ParseError
                                    | TransportError
                                    | UserIdNotFoundInState
                                    | SchemaError
                                    | GraphqlRootFieldMissingError
                                    | MobileMediaLikeWireNotDeclaredError
                                    | ScreenEnterConcurrentError
                                    | ScreenNotOnTopError,
                                | PlainJsonApiHttp
                                | Signature
                                | MobileSession
                                | MobileDevice
                                | GraphqlJsonHttp
                                | MobileApplication
                                | NavigationWire
                                | MobileNavigation
                                | ScreenStack,
                            >;
                        },
                    >;
                    "8": ScreenItemDefinition<
                        "ProfilePostsFeedCarousel",
                        {
                            authorId?: string;
                            dashManifest?: string;
                            followsAuthor?: boolean;
                            mediaId: string;
                            mediaType: 0
                            | 1
                            | 2
                            | 8;
                            position: number;
                            takenAt?: number;
                            trackingToken?: string;
                            videoDuration?: number;
                        },
                        {
                            authorId?: string;
                            dashManifest?: string;
                            followsAuthor?: boolean;
                            mediaId: string;
                            mediaType: 0
                            | 1
                            | 2
                            | 8;
                            position: number;
                            takenAt?: number;
                            trackingToken?: string;
                            videoDuration?: number;
                        },
                        ProfilePostsFeedMediaState,
                        never,
                        never,
                        {
                            like: (
                                self: ScreenHandle,
                                state: ProfilePostsFeedMediaState,
                            ) => (
                                ...args: [],
                            ) => Effect<
                                { data: { xig_media_like: ... } }
                                | MediaLikeRestResponse,

                                    | IgApiError
                                    | RequestError
                                    | ParseError
                                    | TransportError
                                    | UserIdNotFoundInState
                                    | SchemaError
                                    | GraphqlRootFieldMissingError
                                    | MobileMediaLikeWireNotDeclaredError
                                    | ScreenEnterConcurrentError
                                    | ScreenNotOnTopError,
                                | PlainJsonApiHttp
                                | Signature
                                | MobileSession
                                | MobileDevice
                                | GraphqlJsonHttp
                                | MobileApplication
                                | NavigationWire
                                | MobileNavigation
                                | ScreenStack,
                            >;
                        },
                    >;
                };
            },
            never,
            never,
        >;
        ReelsViewer: ReelsViewerScreenDefinition;
        RegistrationBirthday: RegistrationBirthdayDefinition;
        RegistrationConfirmationCode: RegistrationConfirmationCodeDefinition;
        RegistrationName: RegistrationNameDefinition;
        RegistrationPassword: RegistrationPasswordDefinition;
        RegistrationPhoneNumber: RegistrationPhoneNumberDefinition;
        RegistrationTermsOfService: RegistrationTermsOfServiceDefinition;
        RegistrationUsername: RegistrationUsernameDefinition;
        RepostNoteEditor: ScreenDefinition<
            "RepostNoteEditor",
            "screen",
            { mediaId: string; noteId: string; trackingToken: string },
            { mediaId: string; noteId: string },
            RepostNoteEditorState,

                | InvalidSkipOrdinalsError
                | ScreenEnterNavigationError
                | RepostNoteEditorUnavailableError,
            MobileApplication
            | MobileNavigation,
            {
                post: (
                    self: ScreenHandle,
                    state: RepostNoteEditorState,
                ) => (
                    ...args: [text: string],
                ) => Effect<
                    {
                        data: {
                            xdt_update_media_note_repost_text: { id: string; text: string };
                        };
                    },
                    | IgApiError
                    | RequestError
                    | ParseError
                    | TransportError
                    | SchemaError
                    | GraphqlRootFieldMissingError
                    | MediaRepostTextTooLongError
                    | ScreenEnterConcurrentError
                    | ScreenNotOnTopError,
                    GraphqlJsonHttp
                    | MobileApplication
                    | MobileNavigation
                    | ScreenStack,
                >;
            },
            Record<never, never>,
            never,
        >;
        SearchInput: ScreenDefinition<
            "SearchInput",
            "screen",
            | {
                lastSeenMedia?: readonly {
                    mediaIds: readonly string[];
                    surfaceType: string;
                    timestamp: number;
                }[];
                query: string;
                session?: {
                    clientUuidRankToken?: string;
                    searchSessionId: string;
                    serpSessionId?: string;
                    typeaheadSessionId?: string;
                };
            }
            | {
                recent: readonly {
                    fullName: string;
                    userId: string;
                    username: string;
                }[];
            },
            {
                query: string;
                rankToken: string;
                recentAccounts: readonly {
                    fullName: string;
                    userId: string;
                    username: string;
                }[];
                results: readonly (
                    | {
                        __typename: "XDTTypeaheadSearchKeyword";
                        keyword_lazified: {
                            id: string;
                            name: string;
                            user?: | {
                                full_name?: string;
                                id: string;
                                is_private?: boolean;
                                is_verified?: boolean;
                                latest_reel_media?: number
                                | null;
                                profile_pic_url?: string;
                                search_serp_type?: number | null;
                                username: string;
                            }
                            | null;
                        };
                    }
                    | {
                        __typename: "XDTTypeaheadSearchUser";
                        rank_token?: string;
                        user: {
                            full_name?: string;
                            id: string;
                            is_private?: boolean;
                            is_verified?: boolean;
                            latest_reel_media?: number
                            | null;
                            profile_pic_url?: string;
                            search_serp_type?: number | null;
                            username: string;
                        };
                    }
                    | {
                        __typename: "XDTTypeaheadSearchHashtag";
                        hashtag: { id: string; media_count?: number; name: string };
                    }
                )[];
                session?: {
                    clientUuidRankToken: string;
                    searchSessionId: string;
                    serpSessionId?: string;
                    typeaheadSessionId: string;
                };
            },
            SearchInputState,
            | IgApiError
            | RequestError
            | ParseError
            | TransportError
            | SchemaError
            | GraphqlRootFieldMissingError
            | InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileDevice
            | GraphqlJsonHttp
            | MobileApplication
            | MobileNavigation,
            {
                change: (
                    self: ScreenHandle,
                    state: SearchInputState,
                ) => ScreenDataMember<
                    ScreenDataShape,
                    (
                        ...args: [query: string],
                    ) => Effect<
                        ScreenHandle,
                        ScreenDataActionFailure<
                            | IgApiError
                            | RequestError
                            | ParseError
                            | TransportError
                            | SchemaError
                            | GraphqlRootFieldMissingError,
                        >,
                        | MobileDevice
                        | GraphqlJsonHttp
                        | MobileApplication
                        | MobileNavigation
                        | ScreenStack,
                    >,
                >;
                search: (
                    self: ScreenHandle,
                    state: SearchInputState,
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<
                        ScreenDefinition<
                            "SearchResultsTopTab",
                            "screen",
                            {
                                lastSeenMedia?: readonly {
                                    mediaIds: readonly (...)[];
                                    surfaceType: string;
                                    timestamp: number;
                                }[];
                                query: string;
                                session: {
                                    clientUuidRankToken: string;
                                    searchSessionId: string;
                                    serpSessionId?: string;
                                    typeaheadSessionId: string;
                                };
                            },
                            {
                                query: string;
                                session: {
                                    clientUuidRankToken?: string;
                                    searchSessionId: string;
                                    serpSessionId: string;
                                    typeaheadSessionId?: string;
                                };
                            },
                            {
                                query: string;
                                session: {
                                    clientUuidRankToken?: string;
                                    searchSessionId: string;
                                    serpSessionId: string;
                                    typeaheadSessionId?: string;
                                };
                            },
                            | IgApiError
                            | RequestError
                            | ParseError
                            | TransportError
                            | InvalidSkipOrdinalsError
                            | ScreenEnterNavigationError,
                            | PlainJsonApiHttp
                            | MobileDevice
                            | GraphqlJsonHttp
                            | MobileApplication
                            | MobileNavigation,
                            {
                                openUsers: (
                                    self: ScreenHandle,
                                    state: {
                                        query: string;
                                        session: {
                                            clientUuidRankToken?: (...) | (...);
                                            searchSessionId: string;
                                            serpSessionId: string;
                                            typeaheadSessionId?: (...) | (...);
                                        };
                                    },
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<
                                        ScreenDefinition<
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                            (...),
                                        >,
                                        [],
                                        "search_result",
                                    >,
                                    (...args: []) => Effect<(...), (...), (...)>,
                                >;
                            },
                            Record<never, never>,
                            never,
                        >,
                        readonly [string],
                        "search_result",
                    >,
                    (
                        ...args: readonly [string],
                    ) => Effect<
                        AssembledHandle<
                            "SearchResultsTopTab",
                            "screen",
                            {
                                query: string;
                                session: {
                                    clientUuidRankToken?: string;
                                    searchSessionId: string;
                                    serpSessionId: string;
                                    typeaheadSessionId?: string;
                                };
                            },
                            {
                                openUsers: (
                                    self: ScreenHandle,
                                    state: {
                                        query: string;
                                        session: {
                                            clientUuidRankToken?: ...;
                                            searchSessionId: ...;
                                            serpSessionId: ...;
                                            typeaheadSessionId?: ...;
                                        };
                                    },
                                ) => ScreenEdgeBound<
                                    ScreenEdgeShape<(...), (...), (...)>,
                                    (...args: ...) => ...,
                                >;
                            },
                            Record<never, never>,
                            ScreenHandle,
                            "required",
                            true,
                        >,

                            | IgApiError
                            | RequestError
                            | ParseError
                            | TransportError
                            | InvalidSkipOrdinalsError
                            | ScreenDataError
                            | ScreenEnterNavigationError
                            | ScreenEnterConcurrentError
                            | ScreenEdgeInputError
                            | ScreenNotOnTopError,
                        | PlainJsonApiHttp
                        | MobileDevice
                        | GraphqlJsonHttp
                        | MobileApplication
                        | MobileNavigation
                        | ScreenCatalog
                        | ScreenStack,
                    >,
                >;
            },
            {
                recentAccounts: {
                    at: "recentAccounts";
                    item: ScreenItemDefinition<
                        "RecentSearchAccount",
                        { fullName: string; userId: string; username: string },
                        { fullName: string; userId: string; username: string },
                        RecentSearchAccountState,
                        never,
                        never,
                        {
                            openProfile: (
                                self: ScreenHandle,
                                state: RecentSearchAccountState,
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<
                                    UserProfileDefinition,
                                    [],

                                        | "inbox"
                                        | "tab"
                                        | "cold_start"
                                        | "warm_start"
                                        | "button"
                                        | "search_result"
                                        | "suggested_users"
                                        | "third_party_url",
                                >,
                                (
                                    ...args: [],
                                ) => Effect<
                                    AssembledHandle<
                                        "UserProfile",
                                        "screen",
                                        {
                                            backgroundFailures: ...;
                                            following?: ...;
                                            isPrivate: ...;
                                            media: ...;
                                            suggested: ...;
                                            userId: ...;
                                            username: ...;
                                        },
                                        ProfileActions,
                                        { grid: ...; suggestedUsers: ... },
                                        ScreenHandle,
                                        "required",
                                        true,
                                    >,

                                        | IgApiError
                                        | RequestError
                                        | ParseError
                                        | TransportError
                                        | SchemaError
                                        | GraphqlRootFieldMissingError
                                        | InvalidSkipOrdinalsError
                                        | ScreenDataError
                                        | ScreenEnterNavigationError
                                        | ScreenEnterConcurrentError
                                        | ScreenEdgeInputError
                                        | ScreenNotOnTopError,
                                    | PlainJsonApiHttp
                                    | MobileDevice
                                    | GraphqlJsonHttp
                                    | MobileApplication
                                    | NavigationWire
                                    | PlainNdjsonApiHttp
                                    | MobileNavigation
                                    | ScreenCatalog
                                    | ScreenStack,
                                >,
                            >;
                        },
                    >;
                    key: "userId";
                };
            },
            never,
        >;
        SearchResultsAccountsTab: ScreenDefinition<
            "SearchResultsAccountsTab",
            "innerTab",
            {
                query: string;
                session: {
                    clientUuidRankToken?: string;
                    searchSessionId: string;
                    serpSessionId: string;
                    typeaheadSessionId?: string;
                };
            },
            {
                users: readonly {
                    fullName: string;
                    isPrivate: boolean;
                    isVerified: boolean;
                    userId: string;
                    username: string;
                }[];
            },
            Record<never, never>,

                | IgApiError
                | RequestError
                | ParseError
                | TransportError
                | InvalidSkipOrdinalsError
                | ScreenEnterNavigationError,
            PlainJsonApiHttp
            | MobileDevice
            | NavigationWire
            | MobileNavigation,
            {},
            {
                results: {
                    at: "users";
                    item: ScreenItemDefinition<
                        "SearchResultsAccount",
                        {
                            fullName: string;
                            isPrivate: boolean;
                            isVerified: boolean;
                            userId: string;
                            username: string;
                        },
                        {
                            fullName: string;
                            isPrivate: boolean;
                            isVerified: boolean;
                            userId: string;
                            username: string;
                        },
                        SearchResultsAccountState,
                        never,
                        never,
                        {
                            openProfile: (
                                self: ScreenHandle,
                                state: SearchResultsAccountState,
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<
                                    UserProfileDefinition,
                                    [],

                                        | "inbox"
                                        | "tab"
                                        | "cold_start"
                                        | "warm_start"
                                        | "button"
                                        | "search_result"
                                        | "suggested_users"
                                        | "third_party_url",
                                >,
                                (
                                    ...args: [],
                                ) => Effect<
                                    AssembledHandle<
                                        "UserProfile",
                                        "screen",
                                        {
                                            backgroundFailures: ...;
                                            following?: ...;
                                            isPrivate: ...;
                                            media: ...;
                                            suggested: ...;
                                            userId: ...;
                                            username: ...;
                                        },
                                        ProfileActions,
                                        { grid: ...; suggestedUsers: ... },
                                        ScreenHandle,
                                        "required",
                                        true,
                                    >,

                                        | IgApiError
                                        | RequestError
                                        | ParseError
                                        | TransportError
                                        | SchemaError
                                        | GraphqlRootFieldMissingError
                                        | InvalidSkipOrdinalsError
                                        | ScreenDataError
                                        | ScreenEnterNavigationError
                                        | ScreenEnterConcurrentError
                                        | ScreenEdgeInputError
                                        | ScreenNotOnTopError,
                                    | PlainJsonApiHttp
                                    | MobileDevice
                                    | GraphqlJsonHttp
                                    | MobileApplication
                                    | NavigationWire
                                    | PlainNdjsonApiHttp
                                    | MobileNavigation
                                    | ScreenCatalog
                                    | ScreenStack,
                                >,
                            >;
                        },
                    >;
                    key: "userId";
                };
            },
            never,
        >;
        SearchResultsTopTab: ScreenDefinition<
            "SearchResultsTopTab",
            "screen",
            {
                lastSeenMedia?: readonly {
                    mediaIds: readonly string[];
                    surfaceType: string;
                    timestamp: number;
                }[];
                query: string;
                session: {
                    clientUuidRankToken: string;
                    searchSessionId: string;
                    serpSessionId?: string;
                    typeaheadSessionId: string;
                };
            },
            {
                query: string;
                session: {
                    clientUuidRankToken?: string;
                    searchSessionId: string;
                    serpSessionId: string;
                    typeaheadSessionId?: string;
                };
            },
            {
                query: string;
                session: {
                    clientUuidRankToken?: string;
                    searchSessionId: string;
                    serpSessionId: string;
                    typeaheadSessionId?: string;
                };
            },
            | IgApiError
            | RequestError
            | ParseError
            | TransportError
            | InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            | PlainJsonApiHttp
            | MobileDevice
            | GraphqlJsonHttp
            | MobileApplication
            | MobileNavigation,
            {
                openUsers: (
                    self: ScreenHandle,
                    state: {
                        query: string;
                        session: {
                            clientUuidRankToken?: string;
                            searchSessionId: string;
                            serpSessionId: string;
                            typeaheadSessionId?: string;
                        };
                    },
                ) => ScreenEdgeBound<
                    ScreenEdgeShape<
                        ScreenDefinition<
                            "SearchResultsAccountsTab",
                            "innerTab",
                            {
                                query: string;
                                session: {
                                    clientUuidRankToken?: string;
                                    searchSessionId: string;
                                    serpSessionId: string;
                                    typeaheadSessionId?: string;
                                };
                            },
                            {
                                users: readonly {
                                    fullName: string;
                                    isPrivate: boolean;
                                    isVerified: boolean;
                                    userId: string;
                                    username: string;
                                }[];
                            },
                            Record<never, never>,

                                | IgApiError
                                | RequestError
                                | ParseError
                                | TransportError
                                | InvalidSkipOrdinalsError
                                | ScreenEnterNavigationError,
                            PlainJsonApiHttp
                            | MobileDevice
                            | NavigationWire
                            | MobileNavigation,
                            {},
                            {
                                results: {
                                    at: "users";
                                    item: ScreenItemDefinition<
                                        "SearchResultsAccount",
                                        {
                                            fullName: string;
                                            isPrivate: boolean;
                                            isVerified: boolean;
                                            userId: string;
                                            username: string;
                                        },
                                        {
                                            fullName: string;
                                            isPrivate: boolean;
                                            isVerified: boolean;
                                            userId: string;
                                            username: string;
                                        },
                                        SearchResultsAccountState,
                                        never,
                                        never,
                                        { openProfile: (self: ..., state: ...) => ... },
                                    >;
                                    key: "userId";
                                };
                            },
                            never,
                        >,
                        [],
                        "search_result",
                    >,
                    (
                        ...args: [],
                    ) => Effect<
                        AssembledHandle<
                            "SearchResultsAccountsTab",
                            "innerTab",
                            {
                                users: readonly {
                                    fullName: string;
                                    isPrivate: boolean;
                                    isVerified: boolean;
                                    userId: string;
                                    username: string;
                                }[];
                            },
                            {},
                            {
                                results: {
                                    at: "users";
                                    item: ScreenItemDefinition<
                                        "SearchResultsAccount",
                                        {
                                            fullName: ...;
                                            isPrivate: ...;
                                            isVerified: ...;
                                            userId: ...;
                                            username: ...;
                                        },
                                        {
                                            fullName: ...;
                                            isPrivate: ...;
                                            isVerified: ...;
                                            userId: ...;
                                            username: ...;
                                        },
                                        SearchResultsAccountState,
                                        never,
                                        never,
                                        { openProfile: ... },
                                    >;
                                    key: "userId";
                                };
                            },
                            ScreenHandle,
                            "required",
                            true,
                        >,
                        | IgApiError
                        | RequestError
                        | ParseError
                        | TransportError
                        | InvalidSkipOrdinalsError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError,
                        | PlainJsonApiHttp
                        | MobileDevice
                        | NavigationWire
                        | MobileNavigation
                        | ScreenCatalog
                        | ScreenStack,
                    >,
                >;
            },
            Record<never, never>,
            never,
        >;
        UserProfile: UserProfileDefinition;
        get ChallengeAccountSuspended(): ScreenDefinition<
            "ChallengeAccountSuspended",
            "screen",
            {
                body: string;
                disagreeWithDecisionLabel: string;
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
                serverParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
                title: string;
            },
            {
                body: string;
                disagreeWithDecisionLabel: string;
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
                serverParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
                title: string;
            },
            {
                body: string;
                disagreeWithDecisionLabel: string;
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
                serverParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
                title: string;
            },
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeAccountSuspendedActions,
            Record<never, never>,
            never,
        >;
        get ChallengeAccountTemporarilyLocked(): ScreenDefinition<
            "ChallengeAccountTemporarilyLocked",
            "screen",
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeAccountTemporarilyLockedActions,
            Record<never, never>,
            never,
        >;
        get ChallengeAddBirthday(): ScreenDefinition<
            "ChallengeAddBirthday",
            "screen",
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeAddBirthdayActions,
            Record<never, never>,
            never,
        >;
        get ChallengeAuthenticityWizard(): ScreenDefinition<
            "ChallengeAuthenticityWizard",
            "screen",
            {
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
            },
            {
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
            },
            {
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
            },
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeAuthenticityWizardActions,
            Record<never, never>,
            never,
        >;
        get ChallengeAwaitingReview(): ScreenDefinition<
            "ChallengeAwaitingReview",
            "screen",
            {
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
            },
            {
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
            },
            {
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
            },
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeAwaitingReviewActions,
            Record<never, never>,
            never,
        >;
        get ChallengeContactPointCode(): ScreenDefinition<
            "ChallengeContactPointCode",
            "screen",
            {
                changeContactPointParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
                contactPointPreview: string;
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
                resendCodeParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
                submitCodeParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
            },
            {
                changeContactPointParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
                contactPointPreview: string;
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
                resendCodeParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
                submitCodeParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
            },
            {
                changeContactPointParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
                contactPointPreview: string;
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
                resendCodeParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
                submitCodeParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
            },
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeContactPointCodeActions,
            Record<never, never>,
            never,
        >;
        get ChallengeEscalationInformation(): ScreenDefinition<
            "ChallengeEscalationInformation",
            "screen",
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeEscalationInformationActions,
            Record<never, never>,
            never,
        >;
        get ChallengeLoginReview(): ScreenDefinition<
            "ChallengeLoginReview",
            "screen",
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeLoginReviewActions,
            Record<never, never>,
            never,
        >;
        get ChallengeRecaptcha(): ScreenDefinition<
            "ChallengeRecaptcha",
            "screen",
            {
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
                serverParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
                siteKey: string;
                url: string;
            },
            {
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
                serverParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
                siteKey: string;
                url: string;
            },
            {
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
                serverParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
                siteKey: string;
                url: string;
            },
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeRecaptchaActions,
            Record<never, never>,
            never,
        >;
        get ChallengeReviewContactPointChange(): ScreenDefinition<
            "ChallengeReviewContactPointChange",
            "screen",
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeReviewContactPointChangeActions,
            Record<never, never>,
            never,
        >;
        get ChallengeScrapingWarning(): ScreenDefinition<
            "ChallengeScrapingWarning",
            "screen",
            | {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
                surface: "navigation";
            }
            | {
                resolved: {
                    appId: string;
                    challengeType: string;
                    dismissAppId?: string;
                    serverParams: {
                        INTERNAL__latency_qpl_instance_id: number;
                        INTERNAL__latency_qpl_marker_id: number;
                    };
                };
                surface: "redirect";
            },
            | {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
                surface: "navigation";
            }
            | {
                resolved: {
                    appId: string;
                    challengeType: string;
                    dismissAppId?: string;
                    serverParams: {
                        INTERNAL__latency_qpl_instance_id: number;
                        INTERNAL__latency_qpl_marker_id: number;
                    };
                };
                surface: "redirect";
            },
            | {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
                surface: "navigation";
            }
            | {
                resolved: {
                    appId: string;
                    challengeType: string;
                    dismissAppId?: string;
                    serverParams: {
                        INTERNAL__latency_qpl_instance_id: number;
                        INTERNAL__latency_qpl_marker_id: number;
                    };
                };
                surface: "redirect";
            },
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeScrapingWarningActions,
            Record<never, never>,
            never,
        >;
        get ChallengeSelectVerifyMethod(): ScreenDefinition<
            "ChallengeSelectVerifyMethod",
            "screen",
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeSelectVerifyMethodActions,
            Record<never, never>,
            never,
        >;
        get ChallengeSetContactPoint(): ScreenDefinition<
            "ChallengeSetContactPoint",
            "screen",
            {
                contactPointType: "EMAIL"
                | "SMS";
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
                serverParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
            },
            {
                contactPointType: "EMAIL"
                | "SMS";
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
                serverParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
            },
            {
                contactPointType: "EMAIL"
                | "SMS";
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
                serverParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
            },
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeSetContactPointActions,
            Record<never, never>,
            never,
        >;
        get ChallengeSetNewPassword(): ScreenDefinition<
            "ChallengeSetNewPassword",
            "screen",
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeSetNewPasswordActions,
            Record<never, never>,
            never,
        >;
        get ChallengeSubmitPhone(): ScreenDefinition<
            "ChallengeSubmitPhone",
            "screen",
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeSubmitPhoneActions,
            Record<never, never>,
            never,
        >;
        get ChallengeTextCaptcha(): ScreenDefinition<
            "ChallengeTextCaptcha",
            "screen",
            {
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
                imageUrl: string;
                serverParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
            },
            {
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
                imageUrl: string;
                serverParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
            },
            {
                flow: {
                    authenticity_product?: number;
                    challenge_root_id?: string;
                    enrollment_id?: number;
                    external_flow_id?: number;
                    hashed_ui_state?: string;
                    ig_container_module?: string;
                    is_blocking?: number;
                    ixt_initial_screen_id?: string;
                    location?: string;
                    trigger_event_type?: string;
                    trigger_session_id?: string;
                    v2_polling?: number;
                };
                imageUrl: string;
                serverParams: {
                    challenge_root_id?: string;
                    INTERNAL__latency_qpl_instance_id?: string;
                    INTERNAL__latency_qpl_marker_id: number;
                    persisted_data?: string;
                };
            },
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeTextCaptchaActions,
            Record<never, never>,
            never,
        >;
        get ChallengeThanksForProvidingInfo(): ScreenDefinition<
            "ChallengeThanksForProvidingInfo",
            "screen",
            undefined,
            {},
            {},
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeThanksForProvidingInfoActions,
            Record<never, never>,
            never,
        >;
        get ChallengeVerifyCode(): ScreenDefinition<
            "ChallengeVerifyCode",
            "screen",
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            {
                step: {
                    bloks_action: string;
                    challenge_context: string;
                    cni: string
                    | number;
                    flow_render_type: 3;
                    step_data?: { readonly [key: string]: Json };
                    step_name: string;
                };
            },
            InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeVerifyCodeActions,
            Record<never, never>,
            never,
        >;
        get ChallengeWebRecaptcha(): ScreenDefinition<
            "ChallengeWebRecaptcha",
            "screen",
            { url: string },
            { url: string },
            { url: string },
            InvalidSkipOrdinalsError | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeWebRecaptchaActions,
            Record<never, never>,
            never,
        >;
        get ChallengeWebSetNewPassword(): ScreenDefinition<
            "ChallengeWebSetNewPassword",
            "screen",
            { url: string },
            { url: string },
            { url: string },
            InvalidSkipOrdinalsError | ScreenEnterNavigationError,
            MobileNavigation,
            ChallengeWebSetNewPasswordActions,
            Record<never, never>,
            never,
        >;
    }

    Hierarchy

    • ChallengeScreens
      • AndroidScreens
    Index

    Accessors

    • get ChallengeAccountSuspended(): ScreenDefinition<
          "ChallengeAccountSuspended",
          "screen",
          {
              body: string;
              disagreeWithDecisionLabel: string;
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              title: string;
          },
          {
              body: string;
              disagreeWithDecisionLabel: string;
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              title: string;
          },
          {
              body: string;
              disagreeWithDecisionLabel: string;
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              title: string;
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeAccountSuspendedActions,
          Record<never, never>,
          never,
      >

      Returns ScreenDefinition<
          "ChallengeAccountSuspended",
          "screen",
          {
              body: string;
              disagreeWithDecisionLabel: string;
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              title: string;
          },
          {
              body: string;
              disagreeWithDecisionLabel: string;
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              title: string;
          },
          {
              body: string;
              disagreeWithDecisionLabel: string;
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              title: string;
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeAccountSuspendedActions,
          Record<never, never>,
          never,
      >

    • get ChallengeAccountTemporarilyLocked(): ScreenDefinition<
          "ChallengeAccountTemporarilyLocked",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeAccountTemporarilyLockedActions,
          Record<never, never>,
          never,
      >

      Returns ScreenDefinition<
          "ChallengeAccountTemporarilyLocked",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeAccountTemporarilyLockedActions,
          Record<never, never>,
          never,
      >

    • get ChallengeAddBirthday(): ScreenDefinition<
          "ChallengeAddBirthday",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeAddBirthdayActions,
          Record<never, never>,
          never,
      >

      Returns ScreenDefinition<
          "ChallengeAddBirthday",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeAddBirthdayActions,
          Record<never, never>,
          never,
      >

    • get ChallengeAuthenticityWizard(): ScreenDefinition<
          "ChallengeAuthenticityWizard",
          "screen",
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
          },
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
          },
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeAuthenticityWizardActions,
          Record<never, never>,
          never,
      >

      Returns ScreenDefinition<
          "ChallengeAuthenticityWizard",
          "screen",
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
          },
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
          },
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeAuthenticityWizardActions,
          Record<never, never>,
          never,
      >

    • get ChallengeAwaitingReview(): ScreenDefinition<
          "ChallengeAwaitingReview",
          "screen",
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
          },
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
          },
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeAwaitingReviewActions,
          Record<never, never>,
          never,
      >

      Returns ScreenDefinition<
          "ChallengeAwaitingReview",
          "screen",
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
          },
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
          },
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeAwaitingReviewActions,
          Record<never, never>,
          never,
      >

    • get ChallengeContactPointCode(): ScreenDefinition<
          "ChallengeContactPointCode",
          "screen",
          {
              changeContactPointParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              contactPointPreview: string;
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              resendCodeParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              submitCodeParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          {
              changeContactPointParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              contactPointPreview: string;
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              resendCodeParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              submitCodeParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          {
              changeContactPointParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              contactPointPreview: string;
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              resendCodeParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              submitCodeParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeContactPointCodeActions,
          Record<never, never>,
          never,
      >

      Returns ScreenDefinition<
          "ChallengeContactPointCode",
          "screen",
          {
              changeContactPointParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              contactPointPreview: string;
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              resendCodeParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              submitCodeParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          {
              changeContactPointParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              contactPointPreview: string;
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              resendCodeParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              submitCodeParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          {
              changeContactPointParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              contactPointPreview: string;
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              resendCodeParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              submitCodeParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeContactPointCodeActions,
          Record<never, never>,
          never,
      >

    • get ChallengeEscalationInformation(): ScreenDefinition<
          "ChallengeEscalationInformation",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeEscalationInformationActions,
          Record<never, never>,
          never,
      >

      Returns ScreenDefinition<
          "ChallengeEscalationInformation",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeEscalationInformationActions,
          Record<never, never>,
          never,
      >

    • get ChallengeLoginReview(): ScreenDefinition<
          "ChallengeLoginReview",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeLoginReviewActions,
          Record<never, never>,
          never,
      >

      Returns ScreenDefinition<
          "ChallengeLoginReview",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeLoginReviewActions,
          Record<never, never>,
          never,
      >

    • get ChallengeRecaptcha(): ScreenDefinition<
          "ChallengeRecaptcha",
          "screen",
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              siteKey: string;
              url: string;
          },
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              siteKey: string;
              url: string;
          },
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              siteKey: string;
              url: string;
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeRecaptchaActions,
          Record<never, never>,
          never,
      >

      Returns ScreenDefinition<
          "ChallengeRecaptcha",
          "screen",
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              siteKey: string;
              url: string;
          },
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              siteKey: string;
              url: string;
          },
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
              siteKey: string;
              url: string;
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeRecaptchaActions,
          Record<never, never>,
          never,
      >

    • get ChallengeReviewContactPointChange(): ScreenDefinition<
          "ChallengeReviewContactPointChange",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeReviewContactPointChangeActions,
          Record<never, never>,
          never,
      >

      Returns ScreenDefinition<
          "ChallengeReviewContactPointChange",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeReviewContactPointChangeActions,
          Record<never, never>,
          never,
      >

    • get ChallengeScrapingWarning(): ScreenDefinition<
          "ChallengeScrapingWarning",
          "screen",
          | {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
              surface: "navigation";
          }
          | {
              resolved: {
                  appId: string;
                  challengeType: string;
                  dismissAppId?: string;
                  serverParams: {
                      INTERNAL__latency_qpl_instance_id: number;
                      INTERNAL__latency_qpl_marker_id: number;
                  };
              };
              surface: "redirect";
          },
          | {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
              surface: "navigation";
          }
          | {
              resolved: {
                  appId: string;
                  challengeType: string;
                  dismissAppId?: string;
                  serverParams: {
                      INTERNAL__latency_qpl_instance_id: number;
                      INTERNAL__latency_qpl_marker_id: number;
                  };
              };
              surface: "redirect";
          },
          | {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
              surface: "navigation";
          }
          | {
              resolved: {
                  appId: string;
                  challengeType: string;
                  dismissAppId?: string;
                  serverParams: {
                      INTERNAL__latency_qpl_instance_id: number;
                      INTERNAL__latency_qpl_marker_id: number;
                  };
              };
              surface: "redirect";
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeScrapingWarningActions,
          Record<never, never>,
          never,
      >

      Returns ScreenDefinition<
          "ChallengeScrapingWarning",
          "screen",
          | {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
              surface: "navigation";
          }
          | {
              resolved: {
                  appId: string;
                  challengeType: string;
                  dismissAppId?: string;
                  serverParams: {
                      INTERNAL__latency_qpl_instance_id: number;
                      INTERNAL__latency_qpl_marker_id: number;
                  };
              };
              surface: "redirect";
          },
          | {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
              surface: "navigation";
          }
          | {
              resolved: {
                  appId: string;
                  challengeType: string;
                  dismissAppId?: string;
                  serverParams: {
                      INTERNAL__latency_qpl_instance_id: number;
                      INTERNAL__latency_qpl_marker_id: number;
                  };
              };
              surface: "redirect";
          },
          | {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
              surface: "navigation";
          }
          | {
              resolved: {
                  appId: string;
                  challengeType: string;
                  dismissAppId?: string;
                  serverParams: {
                      INTERNAL__latency_qpl_instance_id: number;
                      INTERNAL__latency_qpl_marker_id: number;
                  };
              };
              surface: "redirect";
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeScrapingWarningActions,
          Record<never, never>,
          never,
      >

    • get ChallengeSelectVerifyMethod(): ScreenDefinition<
          "ChallengeSelectVerifyMethod",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeSelectVerifyMethodActions,
          Record<never, never>,
          never,
      >

      Returns ScreenDefinition<
          "ChallengeSelectVerifyMethod",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeSelectVerifyMethodActions,
          Record<never, never>,
          never,
      >

    • get ChallengeSetContactPoint(): ScreenDefinition<
          "ChallengeSetContactPoint",
          "screen",
          {
              contactPointType: "EMAIL"
              | "SMS";
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          {
              contactPointType: "EMAIL"
              | "SMS";
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          {
              contactPointType: "EMAIL"
              | "SMS";
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeSetContactPointActions,
          Record<never, never>,
          never,
      >

      Returns ScreenDefinition<
          "ChallengeSetContactPoint",
          "screen",
          {
              contactPointType: "EMAIL"
              | "SMS";
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          {
              contactPointType: "EMAIL"
              | "SMS";
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          {
              contactPointType: "EMAIL"
              | "SMS";
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeSetContactPointActions,
          Record<never, never>,
          never,
      >

    • get ChallengeSetNewPassword(): ScreenDefinition<
          "ChallengeSetNewPassword",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeSetNewPasswordActions,
          Record<never, never>,
          never,
      >

      Returns ScreenDefinition<
          "ChallengeSetNewPassword",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeSetNewPasswordActions,
          Record<never, never>,
          never,
      >

    • get ChallengeSubmitPhone(): ScreenDefinition<
          "ChallengeSubmitPhone",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeSubmitPhoneActions,
          Record<never, never>,
          never,
      >

      Returns ScreenDefinition<
          "ChallengeSubmitPhone",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeSubmitPhoneActions,
          Record<never, never>,
          never,
      >

    • get ChallengeTextCaptcha(): ScreenDefinition<
          "ChallengeTextCaptcha",
          "screen",
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              imageUrl: string;
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              imageUrl: string;
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              imageUrl: string;
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeTextCaptchaActions,
          Record<never, never>,
          never,
      >

      Returns ScreenDefinition<
          "ChallengeTextCaptcha",
          "screen",
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              imageUrl: string;
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              imageUrl: string;
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          {
              flow: {
                  authenticity_product?: number;
                  challenge_root_id?: string;
                  enrollment_id?: number;
                  external_flow_id?: number;
                  hashed_ui_state?: string;
                  ig_container_module?: string;
                  is_blocking?: number;
                  ixt_initial_screen_id?: string;
                  location?: string;
                  trigger_event_type?: string;
                  trigger_session_id?: string;
                  v2_polling?: number;
              };
              imageUrl: string;
              serverParams: {
                  challenge_root_id?: string;
                  INTERNAL__latency_qpl_instance_id?: string;
                  INTERNAL__latency_qpl_marker_id: number;
                  persisted_data?: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeTextCaptchaActions,
          Record<never, never>,
          never,
      >

    • get ChallengeVerifyCode(): ScreenDefinition<
          "ChallengeVerifyCode",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeVerifyCodeActions,
          Record<never, never>,
          never,
      >

      Returns ScreenDefinition<
          "ChallengeVerifyCode",
          "screen",
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          {
              step: {
                  bloks_action: string;
                  challenge_context: string;
                  cni: string
                  | number;
                  flow_render_type: 3;
                  step_data?: { readonly [key: string]: Json };
                  step_name: string;
              };
          },
          InvalidSkipOrdinalsError
          | ScreenEnterNavigationError,
          MobileNavigation,
          ChallengeVerifyCodeActions,
          Record<never, never>,
          never,
      >

    Properties

    AccountRecoveryAuthenticationConfirmation: ScreenDefinition<
        "AccountRecoveryAuthenticationConfirmation",
        "screen",
        { identifier: string; ticket: string & Brand<"SearchTicket"> },
        { ticket: string & Brand<"CodeEntryTicket"> },
        { ticket: string & Brand<"CodeEntryTicket"> },

            | BloksHttpError
            | InvalidSkipOrdinalsError
            | AccountRecoveryBloksIssuedParamsMissingError
            | RecoverySearchClientInputParamsOrderError
            | ScreenEnterNavigationError
            | AccountRecoveryTicketUnknownError,
        | MobileDevice
        | MobileApplication
        | BloksHttp
        | MobileNavigation
        | AccountRecoveryTickets,
        {
            logInWithCode: (
                self: ScreenHandle,
                state: { ticket: string & Brand<"CodeEntryTicket"> },
            ) => (
                ...args: [code: string],
            ) => Effect<
                AccountRecoveryFirstScreen,
                | IgNotFoundError
                | IgRateLimitError
                | IgSpamError
                | IgSignupBlockError
                | IgCheckpointError
                | IgAccountSuspendedError
                | IgAccountDisabledError
                | IgCookieConsentRequiredError
                | IgLoginRequiredError
                | IgUserLoggedOutError
                | IgChallengeWrongCodeError
                | IgPrivateUserError
                | IgInactiveUserError
                | IgSentryBlockError
                | IgUploadVideoError
                | IgConfigureVideoError
                | IgExactUserNotFoundError
                | IgUserIdNotFoundError
                | IgNetworkError
                | IgDecompressionError
                | IgParseError
                | IgIpBlockError
                | IgLoginTwoFactorRequiredError
                | IgRequestsLimitError
                | IgNotResolvableError
                | RequestError
                | ParseError
                | TransportError
                | LoginBloksParseError
                | IgBloks429Error
                | InvalidSkipOrdinalsError
                | AccountRecoveryBloksIssuedParamsMissingError
                | AccountRecoveryBloksUnknownResponseError
                | ScreenDataError
                | ScreenFeedPageError
                | ScreenEnterNavigationError
                | ScreenEnterConcurrentError
                | ScreenLaunchFirstScreenError
                | ScreenLaunchScreenNotInCatalogError
                | ScreenLaunchSplashNotOnTopError
                | ScreenLaunchSplashScreenError
                | AppAlreadyStartedError
                | ProcessNotSignedInError
                | AccountRecoveryTicketUnknownError
                | ScreenNotOnTopError,
                | MobileSession
                | MobileDevice
                | MobileApplication
                | SessionHeaderParser
                | BloksHttp
                | MobileNavigation
                | AccountRecoveryTickets
                | ScreenStack,
            >;
        },
        Record<never, never>,
        never,
    >
    AccountRecoveryEmailCode: ScreenDefinition<
        "AccountRecoveryEmailCode",
        "screen",
        undefined,
        {
            maskedContact?: string;
            ticket: string & Brand<"LastResortCodeEntryTicket">;
        },
        {
            maskedContact?: string;
            ticket: string & Brand<"LastResortCodeEntryTicket">;
        },
        | BloksHttpError
        | InvalidSkipOrdinalsError
        | AccountRecoveryBloksIssuedParamsMissingError
        | ScreenEnterNavigationError
        | AccountRecoveryTicketUnknownError,
        | MobileSession
        | MobileDevice
        | MobileApplication
        | BloksHttp
        | MobileNavigation
        | AccountRecoveryTickets,
        {
            requestNewCode: (
                self: ScreenHandle,
                state: {
                    maskedContact?: string;
                    ticket: string & Brand<"LastResortCodeEntryTicket">;
                },
            ) => (
                ...args: [],
            ) => Effect<
                AccountRecoveryFirstScreen
                | undefined,

                    | IgNotFoundError
                    | IgRateLimitError
                    | IgSpamError
                    | IgSignupBlockError
                    | IgCheckpointError
                    | IgAccountSuspendedError
                    | IgAccountDisabledError
                    | IgCookieConsentRequiredError
                    | IgLoginRequiredError
                    | IgUserLoggedOutError
                    | IgChallengeWrongCodeError
                    | IgPrivateUserError
                    | IgInactiveUserError
                    | IgSentryBlockError
                    | IgUploadVideoError
                    | IgConfigureVideoError
                    | IgExactUserNotFoundError
                    | IgUserIdNotFoundError
                    | IgNetworkError
                    | IgDecompressionError
                    | IgParseError
                    | IgIpBlockError
                    | IgLoginTwoFactorRequiredError
                    | IgRequestsLimitError
                    | IgNotResolvableError
                    | RequestError
                    | ParseError
                    | TransportError
                    | LoginBloksParseError
                    | IgBloks429Error
                    | InvalidSkipOrdinalsError
                    | AccountRecoveryBloksUnknownResponseError
                    | AccountRecoveryBloksInvalidCodeError
                    | ScreenDataError
                    | ScreenFeedPageError
                    | ScreenEnterNavigationError
                    | ScreenEnterConcurrentError
                    | ScreenLaunchFirstScreenError
                    | ScreenLaunchScreenNotInCatalogError
                    | ScreenLaunchSplashNotOnTopError
                    | ScreenLaunchSplashScreenError
                    | AppAlreadyStartedError
                    | ProcessNotSignedInError
                    | AccountRecoveryTicketUnknownError
                    | ScreenNotOnTopError,
                | MobileSession
                | MobileDevice
                | MobileApplication
                | SessionHeaderParser
                | BloksHttp
                | MobileNavigation
                | AccountRecoveryTickets
                | ScreenStack,
            >;
            submitCode: (
                self: ScreenHandle,
                state: {
                    maskedContact?: string;
                    ticket: string & Brand<"LastResortCodeEntryTicket">;
                },
            ) => (
                ...args: [code: string],
            ) => Effect<
                AccountRecoveryFirstScreen,
                | IgNotFoundError
                | IgRateLimitError
                | IgSpamError
                | IgSignupBlockError
                | IgCheckpointError
                | IgAccountSuspendedError
                | IgAccountDisabledError
                | IgCookieConsentRequiredError
                | IgLoginRequiredError
                | IgUserLoggedOutError
                | IgChallengeWrongCodeError
                | IgPrivateUserError
                | IgInactiveUserError
                | IgSentryBlockError
                | IgUploadVideoError
                | IgConfigureVideoError
                | IgExactUserNotFoundError
                | IgUserIdNotFoundError
                | IgNetworkError
                | IgDecompressionError
                | IgParseError
                | IgIpBlockError
                | IgLoginTwoFactorRequiredError
                | IgRequestsLimitError
                | IgNotResolvableError
                | RequestError
                | ParseError
                | TransportError
                | LoginBloksParseError
                | IgBloks429Error
                | InvalidSkipOrdinalsError
                | AccountRecoveryBloksUnknownResponseError
                | AccountRecoveryBloksInvalidCodeError
                | ScreenDataError
                | ScreenFeedPageError
                | ScreenEnterNavigationError
                | ScreenEnterConcurrentError
                | ScreenLaunchFirstScreenError
                | ScreenLaunchScreenNotInCatalogError
                | ScreenLaunchSplashNotOnTopError
                | ScreenLaunchSplashScreenError
                | AppAlreadyStartedError
                | ProcessNotSignedInError
                | AccountRecoveryTicketUnknownError
                | ScreenNotOnTopError,
                | MobileSession
                | MobileDevice
                | MobileApplication
                | SessionHeaderParser
                | BloksHttp
                | MobileNavigation
                | AccountRecoveryTickets
                | ScreenStack,
            >;
        },
        Record<never, never>,
        never,
    >
    AccountRecoverySearch: ScreenDefinition<
        "AccountRecoverySearch",
        "screen",
        { aac: string; ticket?: string & Brand<"RecoveryActionTicket"> },
        {
            aac: string;
            searchScreenType: string;
            searchTicket: string & Brand<"SearchTicket">;
            textInputId: string;
            waterfallId: string;
        },
        {
            aac: string;
            searchScreenType: string;
            searchTicket: string & Brand<"SearchTicket">;
            textInputId: string;
            waterfallId: string;
        },
        | BloksHttpError
        | InvalidSkipOrdinalsError
        | AccountRecoveryBloksIssuedParamsMissingError
        | ScreenEnterNavigationError
        | AccountRecoveryTicketUnknownError,
        | MobileDevice
        | MobileApplication
        | BloksHttp
        | MobileNavigation
        | AccountRecoveryTickets,
        {
            findAccount: (
                self: ScreenHandle,
                state: {
                    aac: string;
                    searchScreenType: string;
                    searchTicket: string & Brand<"SearchTicket">;
                    textInputId: string;
                    waterfallId: string;
                },
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    ScreenDefinition<
                        "AccountRecoveryAuthenticationConfirmation",
                        "screen",
                        { identifier: string; ticket: string & Brand<"SearchTicket"> },
                        { ticket: string & Brand<"CodeEntryTicket"> },
                        { ticket: string & Brand<"CodeEntryTicket"> },

                            | BloksHttpError
                            | InvalidSkipOrdinalsError
                            | AccountRecoveryBloksIssuedParamsMissingError
                            | RecoverySearchClientInputParamsOrderError
                            | ScreenEnterNavigationError
                            | AccountRecoveryTicketUnknownError,
                        | MobileDevice
                        | MobileApplication
                        | BloksHttp
                        | MobileNavigation
                        | AccountRecoveryTickets,
                        {
                            logInWithCode: (
                                self: ScreenHandle,
                                state: { ticket: string & Brand<(...)> },
                            ) => (
                                ...args: [code: string],
                            ) => Effect<
                                AccountRecoveryFirstScreen,
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...),
                                (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...),
                            >;
                        },
                        Record<never, never>,
                        never,
                    >,
                    readonly [string],
                    "button",
                >,
                (
                    ...args: readonly [string],
                ) => Effect<
                    AssembledHandle<
                        "AccountRecoveryAuthenticationConfirmation",
                        "screen",
                        { ticket: string & Brand<"CodeEntryTicket"> },
                        {
                            logInWithCode: (
                                self: ScreenHandle,
                                state: { ticket: (...) & (...) },
                            ) => (...args: [code: ...]) => Effect<(...), (...), (...)>;
                        },
                        Record<never, never>,
                        ScreenHandle,
                        "required",
                        true,
                    >,

                        | BloksHttpError
                        | InvalidSkipOrdinalsError
                        | AccountRecoveryBloksIssuedParamsMissingError
                        | RecoverySearchClientInputParamsOrderError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | AccountRecoveryTicketUnknownError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError,
                    | MobileDevice
                    | MobileApplication
                    | BloksHttp
                    | MobileNavigation
                    | AccountRecoveryTickets
                    | ScreenCatalog
                    | ScreenStack,
                >,
            >;
        },
        Record<never, never>,
        never,
    >
    AccountRecoverySuccessLocationPermission: ScreenDefinition<
        "AccountRecoverySuccessLocationPermission",
        "screen",
        undefined,
        {},
        Record<never, never>,
        InvalidSkipOrdinalsError | ScreenEnterNavigationError,
        MobileNavigation,
        {
            close: (
                self: ScreenHandle,
                _state: never,
            ) => () => Effect<
                ScreenFrameHandle
                | undefined,

                    | ScreenEnterConcurrentError
                    | ScreenNotOnTopError
                    | ScreenNotNavigableError
                    | ScreenRootBackError,
                MobileNavigation
                | ScreenStack,
            >;
        },
        Record<never, never>,
        never,
    >
    DirectCustomizeChat: ScreenDefinition<
        "DirectCustomizeChat",
        "screen",
        { thread_v2_id: string },
        { thread_v2_id: string },
        { thread_v2_id: string },

            | InvalidSkipOrdinalsError
            | ScreenEnterNavigationError
            | DirectThreadNotCreatedError,
        MobileNavigation,
        {
            openThemePicker: (
                self: ScreenHandle,
                state: { thread_v2_id: string },
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    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: (...)
                                    | (...); thread_v2_id: string },
                                    { name: string; theme_id: (...) | (...); thread_v2_id: string },
                                    DirectThemeState,
                                    never,
                                    never,
                                    { setTheme: (self: ..., state: ...) => ... },
                                >;
                                key: "theme_id";
                            };
                        },
                        never,
                    >,
                    [],
                    "button",
                >,
                (
                    ...args: [],
                ) => Effect<
                    AssembledHandle<
                        "DirectThreadThemePicker",
                        "screen",
                        {
                            themes: readonly {
                                name: string;
                                theme_id: (...)
                                | (...);
                                thread_v2_id: string;
                            }[];
                        },
                        {},
                        {
                            themes: {
                                at: "themes";
                                item: ScreenItemDefinition<
                                    "DirectTheme",
                                    { name: ...; theme_id: ...; thread_v2_id: ... },
                                    { name: ...; theme_id: ...; thread_v2_id: ... },
                                    DirectThemeState,
                                    never,
                                    never,
                                    { setTheme: ... },
                                >;
                                key: "theme_id";
                            };
                        },
                        ScreenHandle,
                        "required",
                        true,
                    >,
                    | IgApiError
                    | RequestError
                    | ParseError
                    | TransportError
                    | InvalidSkipOrdinalsError
                    | ScreenDataError
                    | ScreenEnterNavigationError
                    | ScreenEnterConcurrentError
                    | ScreenEdgeInputError
                    | ScreenNotOnTopError,
                    PlainJsonApiHttp
                    | MobileNavigation
                    | ScreenCatalog
                    | ScreenStack,
                >,
            >;
        },
        Record<never, never>,
        never,
    >
    DirectGroupNameAndPhotoEditor: ScreenDefinition<
        "DirectGroupNameAndPhotoEditor",
        "screen",
        { is_group: boolean; thread_title: string; thread_v2_id: string },
        { is_group: boolean; thread_title: string; thread_v2_id: string },
        { is_group: boolean; thread_title: string; thread_v2_id: string },

            | InvalidSkipOrdinalsError
            | ScreenEnterNavigationError
            | DirectGroupNameUnavailableError,
        MobileNavigation,
        {
            changeName: (
                self: ScreenHandle,
                state: { is_group: boolean; thread_title: string; thread_v2_id: string },
            ) => (
                ...args: [name: string],
            ) => Effect<
                DirectThreadUpdateTitleResponse,
                | IgApiError
                | RequestError
                | ParseError
                | TransportError
                | ScreenEnterConcurrentError
                | ScreenNotOnTopError,
                PlainJsonApiHttp
                | MobileDevice
                | MobileNavigation
                | ScreenStack,
            >;
        },
        Record<never, never>,
        never,
    >
    DirectInbox: ScreenDefinition<
        "DirectInbox",
        "tab",
        undefined,
        {
            seq_id: number;
            threads: readonly {
                is_group: boolean;
                last_activity_at: string;
                muted: boolean;
                preview: readonly {
                    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 }[];
                    };
                    text?: string;
                    timestamp: string;
                    user_id: string;
                }[];
                thread_id: string;
                thread_title: string;
                thread_v2_id: string;
                users: readonly { full_name: string; pk: string; username: string }[];
            }[];
        },
        { seq_id: number },

            | IgApiError
            | RequestError
            | ParseError
            | TransportError
            | InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
        PlainJsonApiHttp
        | MobileApplication
        | MobileNavigation,
        {
            openNewMessage: (
                self: ScreenHandle,
                state: { seq_id: number },
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    ScreenDefinition<
                        "DirectRecipientPicker",
                        "screen",
                        { seq_id: number },
                        {
                            recipients: readonly {
                                full_name: string;
                                pk: string;
                                seq_id: number;
                                username: string;
                            }[];
                        },
                        { seq_id: number },

                            | IgCheckpointError
                            | IgAccountSuspendedError
                            | IgAccountDisabledError
                            | IgLoginRequiredError
                            | IgUserLoggedOutError
                            | InvalidSkipOrdinalsError
                            | ScreenEnterNavigationError,
                        GraphqlJsonHttp
                        | MobileApplication
                        | MobileNavigation,
                        {
                            search: (
                                self: ScreenHandle,
                                state: { seq_id: number },
                            ) => (
                                ...args: [query: string],
                            ) => Effect<
                                readonly (...)[],
                                (...) | (...) | (...) | (...) | (...) | (...) | (...),
                                (...) | (...) | (...),
                            >;
                        },
                        {
                            recipients: {
                                at: "recipients";
                                item: ScreenItemDefinition<
                                    "DirectRecipient",
                                    { full_name: string; pk: string; seq_id: number; username: string },
                                    { full_name: string; pk: string; seq_id: number; username: string },
                                    { seq_id: number; userId: string },
                                    never,
                                    never,
                                    { openThread: (self: ..., state: ...) => ... },
                                >;
                                key: "pk";
                            };
                        },
                        never,
                    >,
                    [],
                    "button",
                >,
                (
                    ...args: [],
                ) => Effect<
                    AssembledHandle<
                        "DirectRecipientPicker",
                        "screen",
                        {
                            recipients: readonly {
                                full_name: string;
                                pk: string;
                                seq_id: number;
                                username: string;
                            }[];
                        },
                        {
                            search: (
                                self: ScreenHandle,
                                state: { seq_id: number },
                            ) => (...args: [query: ...]) => Effect<(...), (...), (...)>;
                        },
                        {
                            recipients: {
                                at: "recipients";
                                item: ScreenItemDefinition<
                                    "DirectRecipient",
                                    { full_name: ...; pk: ...; seq_id: ...; username: ... },
                                    { full_name: ...; pk: ...; seq_id: ...; username: ... },
                                    { seq_id: ...; userId: ... },
                                    never,
                                    never,
                                    { openThread: ... },
                                >;
                                key: "pk";
                            };
                        },
                        ScreenHandle,
                        "required",
                        true,
                    >,
                    | IgCheckpointError
                    | IgAccountSuspendedError
                    | IgAccountDisabledError
                    | IgLoginRequiredError
                    | IgUserLoggedOutError
                    | InvalidSkipOrdinalsError
                    | ScreenDataError
                    | ScreenEnterNavigationError
                    | ScreenEnterConcurrentError
                    | ScreenEdgeInputError
                    | ScreenNotOnTopError,
                    | GraphqlJsonHttp
                    | MobileApplication
                    | MobileNavigation
                    | ScreenCatalog
                    | ScreenStack,
                >,
            >;
        },
        {
            threads: {
                at: "threads";
                item: ScreenItemDefinition<
                    "DirectInboxThread",
                    {
                        is_group: boolean;
                        last_activity_at: string;
                        muted: boolean;
                        preview: readonly {
                            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: ...; url: ... }[];
                            };
                            text?: string;
                            timestamp: string;
                            user_id: string;
                        }[];
                        thread_id: string;
                        thread_title: string;
                        thread_v2_id: string;
                        users: readonly { full_name: string; pk: string; username: string }[];
                    },
                    {
                        is_group: boolean;
                        last_activity_at: string;
                        muted: boolean;
                        preview: readonly {
                            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: ...; url: ... }[];
                            };
                            text?: string;
                            timestamp: string;
                            user_id: string;
                        }[];
                        thread_id: string;
                        thread_title: string;
                        thread_v2_id: string;
                        users: readonly { full_name: string; pk: string; username: string }[];
                    },
                    { peerUserIds: string[]; thread_id: string; thread_v2_id: string },
                    never,
                    never,
                    {
                        open: (
                            self: ScreenHandle,
                            state: {
                                peerUserIds: readonly string[];
                                thread_id: string;
                                thread_v2_id: string;
                            },
                        ) => ScreenEdgeBound<
                            ScreenEdgeShape<
                                ScreenDefinition<
                                    "DirectThread",
                                    "screen",
                                    | {
                                        kind: ...;
                                        peerUserIds: ...;
                                        send_attribution?: ...;
                                        thread_id: ...;
                                        thread_v2_id: ...;
                                    }
                                    | { kind: ...; recipient: ...; send_attribution?: ...; seq_id: ... },
                                    {
                                        media: readonly (...)[];
                                        messages: readonly (...)[];
                                        thread: (...) | (...);
                                        users: readonly (...)[];
                                    },
                                    unknown,
                                    unknown,
                                    unknown,
                                    {
                                        openCustomizeChat: (self: ..., state: ...) => ...;
                                        openThreadDetails: (self: ..., state: ...) => ...;
                                        sendMessage: (self: ..., state: ...) => ...;
                                    },
                                    {
                                        media: { at: ...; by: ...; key: ...; variants: ... };
                                        messages: { at: ...; item: ...; key: ... };
                                        participants: { at: ...; item: ...; key: ... };
                                    },
                                    never,
                                >,
                                [],
                                "inbox",
                            >,
                            (
                                ...args: [],
                            ) => Effect<
                                AssembledHandle<
                                    "DirectThread",
                                    "screen",
                                    { media: ...; messages: ...; thread: ...; users: ... },
                                    { openCustomizeChat: ...; openThreadDetails: ...; sendMessage: ... },
                                    { media: ...; messages: ...; participants: ... },
                                    ScreenHandle,
                                    "required",
                                    true,
                                >,
                                unknown,
                                unknown,
                            >,
                        >;
                    },
                >;
                key: "thread_v2_id";
            };
        },
        never,
    >
    DirectRecipientPicker: ScreenDefinition<
        "DirectRecipientPicker",
        "screen",
        { seq_id: number },
        {
            recipients: readonly {
                full_name: string;
                pk: string;
                seq_id: number;
                username: string;
            }[];
        },
        { seq_id: number },

            | IgCheckpointError
            | IgAccountSuspendedError
            | IgAccountDisabledError
            | IgLoginRequiredError
            | IgUserLoggedOutError
            | InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
        GraphqlJsonHttp
        | MobileApplication
        | MobileNavigation,
        {
            search: (
                self: ScreenHandle,
                state: { seq_id: number },
            ) => (
                ...args: [query: string],
            ) => Effect<
                readonly AssembledHandle<
                    "DirectRecipient",
                    "item",
                    { full_name: string; pk: string; seq_id: number; username: string },
                    {
                        openThread: (
                            self: ScreenHandle,
                            state: { seq_id: number; userId: string },
                        ) => ScreenEdgeBound<
                            ScreenEdgeShape<(...), (...), (...)>,
                            (...args: ...) => ...,
                        >;
                    },
                    Record<never, never>,
                    ScreenHandle,
                    "optional",
                    false,
                >[],

                    | IgApiError
                    | RequestError
                    | ParseError
                    | TransportError
                    | ScreenDataError
                    | ScreenEnterConcurrentError
                    | ScreenNotOnTopError,
                PlainJsonApiHttp
                | MobileNavigation
                | ScreenStack,
            >;
        },
        {
            recipients: {
                at: "recipients";
                item: ScreenItemDefinition<
                    "DirectRecipient",
                    { full_name: string; pk: string; seq_id: number; username: string },
                    { full_name: string; pk: string; seq_id: number; username: string },
                    { seq_id: number; userId: string },
                    never,
                    never,
                    {
                        openThread: (
                            self: ScreenHandle,
                            state: { seq_id: number; userId: string },
                        ) => ScreenEdgeBound<
                            ScreenEdgeShape<
                                ScreenDefinition<
                                    "DirectThread",
                                    "screen",
                                    | {
                                        kind: ...;
                                        peerUserIds: ...;
                                        send_attribution?: ...;
                                        thread_id: ...;
                                        thread_v2_id: ...;
                                    }
                                    | { kind: ...; recipient: ...; send_attribution?: ...; seq_id: ... },
                                    {
                                        media: readonly (...)[];
                                        messages: readonly (...)[];
                                        thread: (...) | (...);
                                        users: readonly (...)[];
                                    },
                                    unknown,
                                    unknown,
                                    unknown,
                                    {
                                        openCustomizeChat: (self: ..., state: ...) => ...;
                                        openThreadDetails: (self: ..., state: ...) => ...;
                                        sendMessage: (self: ..., state: ...) => ...;
                                    },
                                    {
                                        media: { at: ...; by: ...; key: ...; variants: ... };
                                        messages: { at: ...; item: ...; key: ... };
                                        participants: { at: ...; item: ...; key: ... };
                                    },
                                    never,
                                >,
                                [],
                                "button",
                            >,
                            (
                                ...args: [],
                            ) => Effect<
                                AssembledHandle<
                                    "DirectThread",
                                    "screen",
                                    { media: ...; messages: ...; thread: ...; users: ... },
                                    { openCustomizeChat: ...; openThreadDetails: ...; sendMessage: ... },
                                    { media: ...; messages: ...; participants: ... },
                                    ScreenHandle,
                                    "required",
                                    true,
                                >,
                                unknown,
                                unknown,
                            >,
                        >;
                    },
                >;
                key: "pk";
            };
        },
        never,
    >
    DirectThread: ScreenDefinition<
        "DirectThread",
        "screen",
        | {
            kind: "thread";
            peerUserIds: readonly string[];
            send_attribution?: string;
            thread_id: string;
            thread_v2_id: string;
        }
        | {
            kind: "recipient";
            recipient: string;
            send_attribution?: string;
            seq_id: number;
        },
        {
            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 {
                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 }[];
                };
                send_attribution?: string;
                text?: string;
                thread_id: string;
                timestamp: string;
                user_id: string;
            }[];
            thread: | {
                is_group: boolean;
                kind: "thread";
                muted: boolean;
                thread_id: string;
                thread_title: string;
                thread_v2_id: string;
            }
            | { kind: "compose"; recipient_user_id: string; thread_title: string };
            users: readonly {
                full_name: string;
                pk: string;
                thread_v2_id: string;
                username: string;
            }[];
        },
        unknown,
        unknown,
        unknown,
        {
            openCustomizeChat: (
                self: ScreenHandle,
                state:
                    | {
                        is_group: boolean;
                        kind: "thread";
                        peer_user_id?: string;
                        send_attribution?: string;
                        thread_id: string;
                        thread_title: string;
                        thread_v2_id: string;
                    }
                    | {
                        kind: "compose";
                        recipient_user_id: string;
                        send_attribution?: string;
                    },
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    ScreenDefinition<
                        "DirectCustomizeChat",
                        "screen",
                        { thread_v2_id: string },
                        { thread_v2_id: string },
                        { thread_v2_id: string },

                            | InvalidSkipOrdinalsError
                            | ScreenEnterNavigationError
                            | DirectThreadNotCreatedError,
                        MobileNavigation,
                        {
                            openThemePicker: (
                                self: ScreenHandle,
                                state: { thread_v2_id: string },
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<
                                    ScreenDefinition<
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                    >,
                                    [],
                                    "button",
                                >,
                                (...args: []) => Effect<(...), (...), (...)>,
                            >;
                        },
                        Record<never, never>,
                        never,
                    >,
                    [],
                    "button",
                >,
                (
                    ...args: [],
                ) => Effect<
                    AssembledHandle<
                        "DirectCustomizeChat",
                        "screen",
                        { thread_v2_id: string },
                        {
                            openThemePicker: (
                                self: ScreenHandle,
                                state: { thread_v2_id: string },
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<(...), (...), (...)>,
                                (...args: ...) => ...,
                            >;
                        },
                        Record<never, never>,
                        ScreenHandle,
                        "required",
                        true,
                    >,

                        | InvalidSkipOrdinalsError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError
                        | DirectThreadNotCreatedError,
                    MobileNavigation
                    | ScreenCatalog
                    | ScreenStack,
                >,
            >;
            openThreadDetails: (
                self: ScreenHandle,
                state:
                    | {
                        is_group: boolean;
                        kind: "thread";
                        peer_user_id?: string;
                        send_attribution?: string;
                        thread_id: string;
                        thread_title: string;
                        thread_v2_id: string;
                    }
                    | {
                        kind: "compose";
                        recipient_user_id: string;
                        send_attribution?: string;
                    },
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    ScreenDefinition<
                        "DirectThreadDetails",
                        "screen",
                        {
                            is_group: boolean;
                            peer_user_id?: string;
                            thread_title: string;
                            thread_v2_id: string;
                        },
                        {
                            is_group: boolean;
                            peer_user_id?: string;
                            thread_title: string;
                            thread_v2_id: string;
                        },
                        {
                            is_group: boolean;
                            peer_user_id?: string;
                            thread_title: string;
                            thread_v2_id: string;
                        },
                        | IgApiError
                        | RequestError
                        | ParseError
                        | TransportError
                        | InvalidSkipOrdinalsError
                        | ScreenEnterNavigationError
                        | DirectThreadNotCreatedError,
                        | PlainJsonApiHttp
                        | GraphqlJsonHttp
                        | MobileApplication
                        | MobileNavigation,
                        {
                            openSharedMedia: (
                                self: ScreenHandle,
                                state: {
                                    is_group: boolean;
                                    peer_user_id?: string;
                                    thread_title: string;
                                    thread_v2_id: string;
                                },
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<
                                    ScreenDefinition<
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                    >,
                                    [],
                                    "button",
                                >,
                                (...args: []) => Effect<(...), (...), (...)>,
                            >;
                        },
                        Record<never, never>,
                        never,
                    >,
                    [],
                    "button",
                >,
                (
                    ...args: [],
                ) => Effect<
                    AssembledHandle<
                        "DirectThreadDetails",
                        "screen",
                        {
                            is_group: boolean;
                            peer_user_id?: string;
                            thread_title: string;
                            thread_v2_id: string;
                        },
                        {
                            openSharedMedia: (
                                self: ScreenHandle,
                                state: {
                                    is_group: boolean;
                                    peer_user_id?: (...) | (...);
                                    thread_title: string;
                                    thread_v2_id: string;
                                },
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<(...), (...), (...)>,
                                (...args: ...) => ...,
                            >;
                        },
                        Record<never, never>,
                        ScreenHandle,
                        "required",
                        true,
                    >,

                        | IgApiError
                        | RequestError
                        | ParseError
                        | TransportError
                        | InvalidSkipOrdinalsError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError
                        | DirectThreadNotCreatedError,
                    | PlainJsonApiHttp
                    | GraphqlJsonHttp
                    | MobileApplication
                    | MobileNavigation
                    | ScreenCatalog
                    | ScreenStack,
                >,
            >;
            sendMessage: (
                self: ScreenHandle,
                state:
                    | {
                        is_group: boolean;
                        kind: "thread";
                        peer_user_id?: string;
                        send_attribution?: string;
                        thread_id: string;
                        thread_title: string;
                        thread_v2_id: string;
                    }
                    | {
                        kind: "compose";
                        recipient_user_id: string;
                        send_attribution?: string;
                    },
            ) => (
                ...args: [text: string],
            ) => Effect<
                DirectThreadSentMessage,
                | IgApiError
                | RequestError
                | ParseError
                | TransportError
                | ScreenEnterConcurrentError
                | ScreenNotOnTopError,
                | PlainJsonApiHttp
                | Signature
                | MobileDevice
                | GraphqlJsonHttp
                | MobileApplication
                | NavigationWire
                | MobileNavigation
                | ScreenStack,
            >;
        },
        {
            media: {
                at: "media";
                by: "media_type";
                key: "pk";
                variants: {
                    "1": 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,
                        {},
                    >;
                    "2": 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,
                        {},
                    >;
                    "8": 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,
                        {},
                    >;
                };
            };
            messages: {
                at: "messages";
                item: ScreenItemDefinition<
                    "DirectThreadMessage",
                    {
                        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 }[];
                        };
                        send_attribution?: string;
                        text?: string;
                        thread_id: string;
                        timestamp: string;
                        user_id: string;
                    },
                    {
                        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 }[];
                        };
                        send_attribution?: string;
                        text?: string;
                        thread_id: string;
                        timestamp: string;
                        user_id: string;
                    },
                    DirectThreadMessageState,
                    never,
                    never,
                    {
                        react: (
                            self: ScreenHandle,
                            state: DirectThreadMessageState,
                        ) => (
                            ...args: [reaction: "like"],
                        ) => Effect<
                            DirectBroadcastResponse,
                            | IgApiError
                            | RequestError
                            | ParseError
                            | TransportError
                            | ScreenEnterConcurrentError
                            | ScreenNotOnTopError,
                            | PlainJsonApiHttp
                            | Signature
                            | MobileDevice
                            | NavigationWire
                            | MobileNavigation
                            | ScreenStack,
                        >;
                    },
                >;
                key: "item_id";
            };
            participants: {
                at: "users";
                item: ScreenItemDefinition<
                    "DirectThreadParticipant",
                    {
                        full_name: string;
                        pk: string;
                        thread_v2_id: string;
                        username: string;
                    },
                    {
                        full_name: string;
                        pk: string;
                        thread_v2_id: string;
                        username: string;
                    },
                    DirectThreadParticipantState,
                    never,
                    never,
                    {
                        openNicknameEditor: (
                            self: ScreenHandle,
                            state: DirectThreadParticipantState,
                        ) => ScreenEdgeBound<
                            ScreenEdgeShape<
                                ScreenDefinition<
                                    "DirectThreadNicknameChange",
                                    "screen",
                                    { thread_v2_id: string; user_id: string },
                                    { thread_v2_id: string; user_id: string },
                                    { thread_v2_id: string; user_id: string },

                                        | InvalidSkipOrdinalsError
                                        | ScreenEnterNavigationError
                                        | DirectThreadNotCreatedError,
                                    MobileNavigation,
                                    { changeNickname: (self: ..., state: ...) => ... },
                                    Record<never, never>,
                                    never,
                                >,
                                [],
                                "button",
                            >,
                            (
                                ...args: [],
                            ) => Effect<
                                AssembledHandle<
                                    "DirectThreadNicknameChange",
                                    "screen",
                                    { thread_v2_id: ...; user_id: ... },
                                    { changeNickname: ... },
                                    Record<(...), (...)>,
                                    ScreenHandle,
                                    "required",
                                    true,
                                >,

                                    | InvalidSkipOrdinalsError
                                    | ScreenDataError
                                    | ScreenEnterNavigationError
                                    | ScreenEnterConcurrentError
                                    | ScreenEdgeInputError
                                    | ScreenNotOnTopError
                                    | DirectThreadNotCreatedError,
                                MobileNavigation
                                | ScreenCatalog
                                | ScreenStack,
                            >,
                        >;
                    },
                >;
                key: "pk";
            };
        },
        never,
    >
    DirectThreadDetails: ScreenDefinition<
        "DirectThreadDetails",
        "screen",
        {
            is_group: boolean;
            peer_user_id?: string;
            thread_title: string;
            thread_v2_id: string;
        },
        {
            is_group: boolean;
            peer_user_id?: string;
            thread_title: string;
            thread_v2_id: string;
        },
        {
            is_group: boolean;
            peer_user_id?: string;
            thread_title: string;
            thread_v2_id: string;
        },
        | IgApiError
        | RequestError
        | ParseError
        | TransportError
        | InvalidSkipOrdinalsError
        | ScreenEnterNavigationError
        | DirectThreadNotCreatedError,
        PlainJsonApiHttp
        | GraphqlJsonHttp
        | MobileApplication
        | MobileNavigation,
        {
            openSharedMedia: (
                self: ScreenHandle,
                state: {
                    is_group: boolean;
                    peer_user_id?: string;
                    thread_title: string;
                    thread_v2_id: string;
                },
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    ScreenDefinition<
                        "DirectThreadSharedMedia",
                        "screen",
                        { is_group: boolean; thread_title: string; thread_v2_id: string },
                        { is_group: boolean; thread_title: string; thread_v2_id: string },
                        { is_group: boolean; thread_title: string; thread_v2_id: string },

                            | IgApiError
                            | RequestError
                            | ParseError
                            | TransportError
                            | InvalidSkipOrdinalsError
                            | ScreenEnterNavigationError,
                        PlainJsonApiHttp
                        | MobileNavigation,
                        {
                            openGroupNameEditor: (
                                self: ScreenHandle,
                                state: {
                                    is_group: boolean;
                                    thread_title: string;
                                    thread_v2_id: string;
                                },
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<
                                    ScreenDefinition<
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                    >,
                                    [],
                                    "button",
                                >,
                                (...args: []) => Effect<(...), (...), (...)>,
                            >;
                        },
                        Record<never, never>,
                        never,
                    >,
                    [],
                    "button",
                >,
                (
                    ...args: [],
                ) => Effect<
                    AssembledHandle<
                        "DirectThreadSharedMedia",
                        "screen",
                        { is_group: boolean; thread_title: string; thread_v2_id: string },
                        {
                            openGroupNameEditor: (
                                self: ScreenHandle,
                                state: {
                                    is_group: boolean;
                                    thread_title: string;
                                    thread_v2_id: string;
                                },
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<(...), (...), (...)>,
                                (...args: ...) => ...,
                            >;
                        },
                        Record<never, never>,
                        ScreenHandle,
                        "required",
                        true,
                    >,

                        | IgApiError
                        | RequestError
                        | ParseError
                        | TransportError
                        | InvalidSkipOrdinalsError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError,
                    PlainJsonApiHttp
                    | MobileNavigation
                    | ScreenCatalog
                    | ScreenStack,
                >,
            >;
        },
        Record<never, never>,
        never,
    >
    DirectThreadNicknameChange: ScreenDefinition<
        "DirectThreadNicknameChange",
        "screen",
        { thread_v2_id: string; user_id: string },
        { thread_v2_id: string; user_id: string },
        { thread_v2_id: string; user_id: string },

            | InvalidSkipOrdinalsError
            | ScreenEnterNavigationError
            | DirectThreadNotCreatedError,
        MobileNavigation,
        {
            changeNickname: (
                self: ScreenHandle,
                state: { thread_v2_id: string; user_id: string },
            ) => (
                ...args: [nickname: string],
            ) => Effect<
                boolean,
                | IgApiError
                | RequestError
                | ParseError
                | TransportError
                | SchemaError
                | GraphqlRootFieldMissingError
                | ScreenEnterConcurrentError
                | ScreenNotOnTopError,
                GraphqlJsonHttp
                | MobileApplication
                | MobileNavigation
                | ScreenStack,
            >;
        },
        Record<never, never>,
        never,
    >
    DirectThreadSharedMedia: ScreenDefinition<
        "DirectThreadSharedMedia",
        "screen",
        { is_group: boolean; thread_title: string; thread_v2_id: string },
        { is_group: boolean; thread_title: string; thread_v2_id: string },
        { is_group: boolean; thread_title: string; thread_v2_id: string },

            | IgApiError
            | RequestError
            | ParseError
            | TransportError
            | InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
        PlainJsonApiHttp
        | MobileNavigation,
        {
            openGroupNameEditor: (
                self: ScreenHandle,
                state: { is_group: boolean; thread_title: string; thread_v2_id: string },
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    ScreenDefinition<
                        "DirectGroupNameAndPhotoEditor",
                        "screen",
                        { is_group: boolean; thread_title: string; thread_v2_id: string },
                        { is_group: boolean; thread_title: string; thread_v2_id: string },
                        { is_group: boolean; thread_title: string; thread_v2_id: string },

                            | InvalidSkipOrdinalsError
                            | ScreenEnterNavigationError
                            | DirectGroupNameUnavailableError,
                        MobileNavigation,
                        {
                            changeName: (
                                self: ScreenHandle,
                                state: {
                                    is_group: boolean;
                                    thread_title: string;
                                    thread_v2_id: string;
                                },
                            ) => (
                                ...args: [name: string],
                            ) => Effect<
                                DirectThreadUpdateTitleResponse,
                                (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...),
                                (...) | (...) | (...) | (...),
                            >;
                        },
                        Record<never, never>,
                        never,
                    >,
                    [],
                    "button",
                >,
                (
                    ...args: [],
                ) => Effect<
                    AssembledHandle<
                        "DirectGroupNameAndPhotoEditor",
                        "screen",
                        { is_group: boolean; thread_title: string; thread_v2_id: string },
                        {
                            changeName: (
                                self: ScreenHandle,
                                state: {
                                    is_group: boolean;
                                    thread_title: string;
                                    thread_v2_id: string;
                                },
                            ) => (...args: [name: ...]) => Effect<(...), (...), (...)>;
                        },
                        Record<never, never>,
                        ScreenHandle,
                        "required",
                        true,
                    >,

                        | InvalidSkipOrdinalsError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError
                        | DirectGroupNameUnavailableError,
                    MobileNavigation
                    | ScreenCatalog
                    | ScreenStack,
                >,
            >;
        },
        Record<never, never>,
        never,
    >
    DirectThreadThemePicker: 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,
    >
    Explore: ScreenDefinition<
        "Explore",
        "tab",
        undefined,
        {
            recent: readonly { fullName: string; userId: string; username: string }[];
        },
        ExploreState,
        | IgApiError
        | RequestError
        | ParseError
        | TransportError
        | InvalidSkipOrdinalsError
        | ScreenDataError
        | ScreenEnterNavigationError,
        PlainJsonApiHttp
        | Signature
        | MobileNavigation,
        {
            openSearchInput: (
                self: ScreenHandle,
                state: ExploreState,
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    ScreenDefinition<
                        "SearchInput",
                        "screen",
                        | {
                            lastSeenMedia?: readonly {
                                mediaIds: ...;
                                surfaceType: ...;
                                timestamp: ...;
                            }[];
                            query: string;
                            session?: {
                                clientUuidRankToken?: (...)
                                | (...);
                                searchSessionId: string;
                                serpSessionId?: (...) | (...);
                                typeaheadSessionId?: (...) | (...);
                            };
                        }
                        | {
                            recent: readonly {
                                fullName: string;
                                userId: string;
                                username: string;
                            }[];
                        },
                        {
                            query: string;
                            rankToken: string;
                            recentAccounts: readonly {
                                fullName: string;
                                userId: string;
                                username: string;
                            }[];
                            results: readonly (
                                | {
                                    __typename: "XDTTypeaheadSearchKeyword";
                                    keyword_lazified: { id: ...; name: ...; user?: ... };
                                }
                                | {
                                    __typename: "XDTTypeaheadSearchUser";
                                    rank_token?: (...)
                                    | (...);
                                    user: {
                                        full_name?: ...;
                                        id: ...;
                                        is_private?: ...;
                                        is_verified?: ...;
                                        latest_reel_media?: ...;
                                        profile_pic_url?: ...;
                                        search_serp_type?: ...;
                                        username: ...;
                                    };
                                }
                                | {
                                    __typename: "XDTTypeaheadSearchHashtag";
                                    hashtag: { id: ...; media_count?: ...; name: ... };
                                }
                            )[];
                            session?: {
                                clientUuidRankToken: string;
                                searchSessionId: string;
                                serpSessionId?: string;
                                typeaheadSessionId: string;
                            };
                        },
                        SearchInputState,
                        | IgApiError
                        | RequestError
                        | ParseError
                        | TransportError
                        | SchemaError
                        | GraphqlRootFieldMissingError
                        | InvalidSkipOrdinalsError
                        | ScreenEnterNavigationError,
                        MobileDevice
                        | GraphqlJsonHttp
                        | MobileApplication
                        | MobileNavigation,
                        {
                            change: (
                                self: ScreenHandle,
                                state: SearchInputState,
                            ) => ScreenDataMember<
                                ScreenDataShape,
                                (...args: [query: ...]) => Effect<(...), (...), (...)>,
                            >;
                            search: (
                                self: ScreenHandle,
                                state: SearchInputState,
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<
                                    ScreenDefinition<
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                    >,
                                    readonly [(...)],
                                    "search_result",
                                >,
                                (...args: readonly [(...)]) => Effect<(...), (...), (...)>,
                            >;
                        },
                        {
                            recentAccounts: {
                                at: "recentAccounts";
                                item: ScreenItemDefinition<
                                    "RecentSearchAccount",
                                    { fullName: string; userId: string; username: string },
                                    { fullName: string; userId: string; username: string },
                                    RecentSearchAccountState,
                                    never,
                                    never,
                                    { openProfile: (self: ..., state: ...) => ... },
                                >;
                                key: "userId";
                            };
                        },
                        never,
                    >,
                    [],
                    "button",
                >,
                (
                    ...args: [],
                ) => Effect<
                    AssembledHandle<
                        "SearchInput",
                        "screen",
                        {
                            query: string;
                            rankToken: string;
                            recentAccounts: readonly {
                                fullName: string;
                                userId: string;
                                username: string;
                            }[];
                            results: readonly (
                                | { __typename: ...; keyword_lazified: ... }
                                | { __typename: ...; rank_token?: ...; user: ... }
                                | { __typename: ...; hashtag: ... }
                            )[];
                            session?: {
                                clientUuidRankToken: string;
                                searchSessionId: string;
                                serpSessionId?: (...) | (...);
                                typeaheadSessionId: string;
                            };
                        },
                        {
                            change: (
                                self: ScreenHandle,
                                state: SearchInputState,
                            ) => ScreenDataMember<ScreenDataShape, (...args: ...) => ...>;
                            search: (
                                self: ScreenHandle,
                                state: SearchInputState,
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<(...), (...), (...)>,
                                (...args: ...) => ...,
                            >;
                        },
                        {
                            recentAccounts: {
                                at: "recentAccounts";
                                item: ScreenItemDefinition<
                                    "RecentSearchAccount",
                                    { fullName: ...; userId: ...; username: ... },
                                    { fullName: ...; userId: ...; username: ... },
                                    RecentSearchAccountState,
                                    never,
                                    never,
                                    { openProfile: ... },
                                >;
                                key: "userId";
                            };
                        },
                        ScreenHandle,
                        "required",
                        true,
                    >,
                    | IgApiError
                    | RequestError
                    | ParseError
                    | TransportError
                    | SchemaError
                    | GraphqlRootFieldMissingError
                    | InvalidSkipOrdinalsError
                    | ScreenDataError
                    | ScreenEnterNavigationError
                    | ScreenEnterConcurrentError
                    | ScreenEdgeInputError
                    | ScreenNotOnTopError,
                    | MobileDevice
                    | GraphqlJsonHttp
                    | MobileApplication
                    | MobileNavigation
                    | ScreenCatalog
                    | ScreenStack,
                >,
            >;
        },
        Record<never, never>,
        never,
    >
    FeedTimeline: SwipeableFeedScreen<
        "FeedTimeline",
        "tab",
        { opening?: "cold_start"
        | "tab_open" },
        { nextMaxId?: string; reason: TimelineFeedReason; requestId?: string },
        {
            entries: readonly (
                | {
                    key: string;
                    media: {
                        code: string;
                        id: string;
                        injected?: { ad_id?: string | number }
                        | null;
                        logging_info_token?: string;
                        media_type: number;
                        pk?: string | number;
                        product_type?: string;
                        taken_at?: number;
                        user?: { pk: string | number; username: string };
                    };
                    position: number;
                    type: "post";
                }
                | {
                    key: string;
                    media: {
                        code: string;
                        id: string;
                        injected?: { ad_id?: string | number }
                        | null;
                        logging_info_token?: string;
                        media_type: number;
                        pk?: string | number;
                        product_type?: string;
                        taken_at?: number;
                        user?: { pk: string | number; username: string };
                    };
                    position: number;
                    type: "reel";
                }
                | {
                    key: string;
                    media: {
                        code: string;
                        id: string;
                        injected?: { ad_id?: string | number }
                        | null;
                        logging_info_token?: string;
                        media_type: number;
                        pk?: string | number;
                        product_type?: string;
                        taken_at?: number;
                        user?: { pk: string | number; username: string };
                    };
                    position: number;
                    type: "ad";
                }
                | {
                    key: string;
                    media: {
                        code: string;
                        id: string;
                        injected?: { ad_id?: string | number }
                        | null;
                        logging_info_token?: string;
                        media_type: number;
                        pk?: string | number;
                        product_type?: string;
                        taken_at?: number;
                        user?: { pk: string | number; username: string };
                    };
                    position: number;
                    source: string;
                    type: "explore_story";
                }
                | {
                    key: string;
                    position: number;
                    subtitle: string;
                    title: string;
                    type: "caught-up";
                }
                | {
                    key: string;
                    position: number;
                    posts: readonly {
                        id?: string;
                        media_type?: number;
                        user?: { pk: string
                        | number; username: string };
                    }[];
                    title: string;
                    type: "threads";
                }
                | {
                    key: string;
                    position: number;
                    reels: readonly {
                        id?: string;
                        is_eof?: boolean
                        | null;
                        media_type?: number;
                        pk?: number;
                        user?: { pk: string | number; username: string };
                    }[];
                    title: string;
                    type: "suggested-reels";
                }
            )[];
            more_available: boolean;
            next_max_id?: string;
            requestId: string;
        },
        IgApiError
        | RequestError
        | ParseError
        | TransportError
        | ScreenDataError,

            | PlainJsonApiHttp
            | MobileSession
            | MobileDevice
            | MobileApplication
            | NavigationWire,
        | IgApiError
        | RequestError
        | ParseError
        | TransportError
        | InvalidSkipOrdinalsError
        | ScreenDataError
        | ScreenFeedPageError
        | ScreenEnterNavigationError,
        | PlainJsonApiHttp
        | MobileSession
        | MobileDevice
        | MobileApplication
        | NavigationWire
        | MobileNavigation,
        FeedTimelineActions,
        {
            at: "entries";
            by: "type";
            key: "key";
            variants: {
                ad: ScreenItemDefinition<
                    "FeedTimelineAd",
                    {
                        key: string;
                        media: {
                            code: string;
                            id: string;
                            injected?: { ad_id?: string | number }
                            | null;
                            logging_info_token?: string;
                            media_type: number;
                            pk?: string | number;
                            product_type?: string;
                            taken_at?: number;
                            user?: { pk: string | number; username: string };
                        };
                        position: number;
                        type: "ad";
                    },
                    {
                        key: string;
                        media: {
                            code: string;
                            id: string;
                            injected?: { ad_id?: string | number }
                            | null;
                            logging_info_token?: string;
                            media_type: number;
                            pk?: string | number;
                            product_type?: string;
                            taken_at?: number;
                            user?: { pk: string | number; username: string };
                        };
                        position: number;
                        type: "ad";
                    },
                    Record<never, never>,
                    never,
                    never,
                    {},
                >;
                "caught-up": ScreenItemDefinition<
                    "FeedTimelineCaughtUp",
                    {
                        key: string;
                        position: number;
                        subtitle: string;
                        title: string;
                        type: "caught-up";
                    },
                    {
                        key: string;
                        position: number;
                        subtitle: string;
                        title: string;
                        type: "caught-up";
                    },
                    Record<never, never>,
                    never,
                    never,
                    {},
                >;
                explore_story: ScreenItemDefinition<
                    "FeedTimelineExploreStory",
                    {
                        key: string;
                        media: {
                            code: string;
                            id: string;
                            injected?: { ad_id?: string | number }
                            | null;
                            logging_info_token?: string;
                            media_type: number;
                            pk?: string | number;
                            product_type?: string;
                            taken_at?: number;
                            user?: { pk: string | number; username: string };
                        };
                        position: number;
                        source: string;
                        type: "explore_story";
                    },
                    {
                        key: string;
                        media: {
                            code: string;
                            id: string;
                            injected?: { ad_id?: string | number }
                            | null;
                            logging_info_token?: string;
                            media_type: number;
                            pk?: string | number;
                            product_type?: string;
                            taken_at?: number;
                            user?: { pk: string | number; username: string };
                        };
                        position: number;
                        source: string;
                        type: "explore_story";
                    },
                    Record<never, never>,
                    never,
                    never,
                    {},
                >;
                post: ScreenItemDefinition<
                    "FeedTimelinePost",
                    {
                        key: string;
                        media: {
                            code: string;
                            id: string;
                            injected?: { ad_id?: string | number }
                            | null;
                            logging_info_token?: string;
                            media_type: number;
                            pk?: string | number;
                            product_type?: string;
                            taken_at?: number;
                            user?: { pk: string | number; username: string };
                        };
                        position: number;
                        type: "post";
                    },
                    {
                        key: string;
                        media: {
                            code: string;
                            id: string;
                            injected?: { ad_id?: string | number }
                            | null;
                            logging_info_token?: string;
                            media_type: number;
                            pk?: string | number;
                            product_type?: string;
                            taken_at?: number;
                            user?: { pk: string | number; username: string };
                        };
                        position: number;
                        type: "post";
                    },
                    FeedTimelinePostState,
                    never,
                    never,
                    {
                        like: (
                            self: ScreenHandle,
                            state: FeedTimelinePostState,
                        ) => (
                            ...args: [],
                        ) => Effect<
                            { data: { xig_media_like: ... } }
                            | MediaLikeRestResponse,

                                | IgApiError
                                | RequestError
                                | ParseError
                                | TransportError
                                | UserIdNotFoundInState
                                | SchemaError
                                | GraphqlRootFieldMissingError
                                | MobileMediaLikeWireNotDeclaredError
                                | ScreenEnterConcurrentError
                                | ScreenNotOnTopError,
                            | PlainJsonApiHttp
                            | Signature
                            | MobileSession
                            | MobileDevice
                            | GraphqlJsonHttp
                            | MobileApplication
                            | NavigationWire
                            | MobileNavigation
                            | ScreenStack,
                        >;
                        open: (
                            self: ScreenHandle,
                            state: FeedTimelinePostState,
                        ) => ScreenEdgeBound<
                            ScreenEdgeShape<
                                ScreenDefinition<
                                    "PostOpenedFromLink",
                                    "screen",
                                    {
                                        carouselIndex?: (...)
                                        | (...);
                                        feedPosition?: (...) | (...) | (...);
                                        loggingInfoToken?: (...) | (...);
                                        mediaId: string;
                                    },
                                    { carousel?: (...)
                                    | (...); mediaId: string; trackingToken: string },
                                    PostOpenedFromLinkState,

                                        | IgApiError
                                        | RequestError
                                        | ParseError
                                        | TransportError
                                        | InvalidSkipOrdinalsError
                                        | ScreenDataError
                                        | ScreenEnterNavigationError,
                                    PlainJsonApiHttp
                                    | MobileNavigation,
                                    {
                                        like: (self: ..., state: ...) => ...;
                                        openComments: (self: ..., state: ...) => ...;
                                        repost: (self: ..., state: ...) => ...;
                                    },
                                    Record<never, never>,
                                    never,
                                >,
                                [],
                                "button",
                            >,
                            (
                                ...args: [],
                            ) => Effect<
                                AssembledHandle<
                                    "PostOpenedFromLink",
                                    "screen",
                                    { carousel?: ...; mediaId: ...; trackingToken: ... },
                                    { like: ...; openComments: ...; repost: ... },
                                    Record<(...), (...)>,
                                    ScreenHandle,
                                    "required",
                                    true,
                                >,

                                    | IgApiError
                                    | RequestError
                                    | ParseError
                                    | TransportError
                                    | InvalidSkipOrdinalsError
                                    | ScreenDataError
                                    | ScreenEnterNavigationError
                                    | ScreenEnterConcurrentError
                                    | ScreenEdgeInputError
                                    | ScreenNotOnTopError,
                                PlainJsonApiHttp
                                | MobileNavigation
                                | ScreenCatalog
                                | ScreenStack,
                            >,
                        >;
                    },
                >;
                reel: ScreenItemDefinition<
                    "FeedTimelineReel",
                    {
                        key: string;
                        media: {
                            code: string;
                            id: string;
                            injected?: { ad_id?: string | number }
                            | null;
                            logging_info_token?: string;
                            media_type: number;
                            pk?: string | number;
                            product_type?: string;
                            taken_at?: number;
                            user?: { pk: string | number; username: string };
                        };
                        position: number;
                        type: "reel";
                    },
                    {
                        key: string;
                        media: {
                            code: string;
                            id: string;
                            injected?: { ad_id?: string | number }
                            | null;
                            logging_info_token?: string;
                            media_type: number;
                            pk?: string | number;
                            product_type?: string;
                            taken_at?: number;
                            user?: { pk: string | number; username: string };
                        };
                        position: number;
                        type: "reel";
                    },
                    FeedTimelinePostState,
                    never,
                    never,
                    {
                        open: (
                            self: ScreenHandle,
                            state: FeedTimelinePostState,
                        ) => ScreenEdgeBound<
                            ScreenEdgeShape<
                                ReelsViewerScreenDefinition,
                                readonly [
                                    {
                                        chainingPosition?: (...)
                                        | (...)
                                        | (...);
                                        chainingSeedMediaId?: (...) | (...);
                                        chainingSessionId?: (...) | (...);
                                        clientPosition?: (...) | (...) | (...);
                                        mediaPctWatched?: (...) | (...) | (...);
                                        rankingSessionId?: (...) | (...);
                                        storyRankingToken?: (...) | (...);
                                    },
                                ],
                                "warm_start",
                            >,
                            (
                                ...args: readonly [
                                    {
                                        chainingPosition?: (...)
                                        | (...)
                                        | (...);
                                        chainingSeedMediaId?: (...) | (...);
                                        chainingSessionId?: (...) | (...);
                                        clientPosition?: (...) | (...) | (...);
                                        mediaPctWatched?: (...) | (...) | (...);
                                        rankingSessionId?: (...) | (...);
                                        storyRankingToken?: (...) | (...);
                                    },
                                ],
                            ) => Effect<
                                AssembledHandle<
                                    "ReelsViewer",
                                    "tab",
                                    { entries: ...; next?: ...; opensOnOneReel?: ... },
                                    (...) & (...),
                                    ScreenFeedItems<(...)>,
                                    ScreenHandle,
                                    "required",
                                    true,
                                >,

                                    | IgApiError
                                    | RequestError
                                    | ParseError
                                    | TransportError
                                    | InvalidSkipOrdinalsError
                                    | ScreenDataError
                                    | ScreenFeedPageError
                                    | ScreenEnterNavigationError
                                    | ScreenEnterConcurrentError
                                    | ScreenEdgeInputError
                                    | ScreenNotOnTopError,
                                | PlainJsonApiHttp
                                | Signature
                                | MobileSession
                                | MobileDevice
                                | NavigationWire
                                | MobileNavigation
                                | ScreenCatalog
                                | ScreenStack,
                            >,
                        >;
                    },
                >;
                "suggested-reels": ScreenItemDefinition<
                    "FeedTimelineSuggestedReels",
                    {
                        key: string;
                        position: number;
                        reels: readonly {
                            id?: string;
                            is_eof?: boolean
                            | null;
                            media_type?: number;
                            pk?: number;
                            user?: { pk: string | number; username: string };
                        }[];
                        title: string;
                        type: "suggested-reels";
                    },
                    {
                        key: string;
                        position: number;
                        reels: readonly {
                            id?: string;
                            is_eof?: boolean
                            | null;
                            media_type?: number;
                            pk?: number;
                            user?: { pk: string | number; username: string };
                        }[];
                        title: string;
                        type: "suggested-reels";
                    },
                    Record<never, never>,
                    never,
                    never,
                    {},
                >;
                threads: ScreenItemDefinition<
                    "FeedTimelineThreads",
                    {
                        key: string;
                        position: number;
                        posts: readonly {
                            id?: string;
                            media_type?: number;
                            user?: { pk: string
                            | number; username: string };
                        }[];
                        title: string;
                        type: "threads";
                    },
                    {
                        key: string;
                        position: number;
                        posts: readonly {
                            id?: string;
                            media_type?: number;
                            user?: { pk: string
                            | number; username: string };
                        }[];
                        title: string;
                        type: "threads";
                    },
                    Record<never, never>,
                    never,
                    never,
                    {},
                >;
            };
        },
        never,
        never,
    >
    LoginHomepage: ScreenDefinition<
        "LoginHomepage",
        "screen",
        undefined,
        {
            aac: string;
            attestationChallengeNonce?: string;
            loginEntryPoint: "login-home"
            | "landing-screen";
            oauthQpl: { instanceId: number; markerId: number };
            passwordTextInputId: string;
            qpl: { instanceId: number; markerId: number };
            recoveryTicket?: string & Brand<"RecoveryActionTicket">;
            usernameTextInputId: string;
            waterfallId: string;
        },
        {
            aac: string;
            attestationChallengeNonce?: string;
            loginEntryPoint: "login-home"
            | "landing-screen";
            oauthQpl: { instanceId: number; markerId: number };
            passwordTextInputId: string;
            qpl: { instanceId: number; markerId: number };
            recoveryTicket?: string & Brand<"RecoveryActionTicket">;
            usernameTextInputId: string;
            waterfallId: string;
        },
        | InvalidSkipOrdinalsError
        | ScreenEnterNavigationError
        | LoginHomepageNotLaunchedError,
        MobileNavigation
        | LoginHomepageLaunch,
        {
            createNewAccount: (
                self: ScreenHandle,
                state: {
                    aac: string;
                    attestationChallengeNonce?: string;
                    loginEntryPoint: "login-home" | "landing-screen";
                    oauthQpl: { instanceId: number; markerId: number };
                    passwordTextInputId: string;
                    qpl: { instanceId: number; markerId: number };
                    recoveryTicket?: string & Brand<"RecoveryActionTicket">;
                    usernameTextInputId: string;
                    waterfallId: string;
                },
            ) => ScreenEdgeBound<
                ScreenEdgeShape<RegistrationPhoneNumberDefinition, [], "button">,
                (
                    ...args: [],
                ) => Effect<
                    AssembledHandle<
                        "RegistrationPhoneNumber",
                        "screen",
                        {},
                        {
                            submitPhoneNumber: (
                                self: ScreenHandle,
                                state: State,
                            ) => (...args: [phoneNumber: ...]) => Effect<(...), (...), (...)>;
                        },
                        Record<never, never>,
                        ScreenHandle,
                        "required",
                        true,
                    >,

                        | IgNotFoundError
                        | IgRateLimitError
                        | IgSpamError
                        | IgSignupBlockError
                        | IgCheckpointError
                        | IgAccountSuspendedError
                        | IgAccountDisabledError
                        | IgCookieConsentRequiredError
                        | IgLoginRequiredError
                        | IgUserLoggedOutError
                        | IgChallengeWrongCodeError
                        | IgPrivateUserError
                        | IgInactiveUserError
                        | IgSentryBlockError
                        | IgUploadVideoError
                        | IgConfigureVideoError
                        | IgExactUserNotFoundError
                        | IgUserIdNotFoundError
                        | IgNetworkError
                        | IgDecompressionError
                        | IgParseError
                        | IgIpBlockError
                        | IgLoginTwoFactorRequiredError
                        | IgRequestsLimitError
                        | IgNotResolvableError
                        | RequestError
                        | ParseError
                        | TransportError
                        | IgBloks429Error
                        | InvalidSkipOrdinalsError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError,
                    | PlainJsonApiHttp
                    | MobileSession
                    | MobileDevice
                    | GraphqlJsonHttp
                    | MobileApplication
                    | BloksHttp
                    | MobileNavigation
                    | ScreenCatalog
                    | ScreenStack,
                >,
            >;
            logIn: (
                self: LoginHomepageFrame,
                state: {
                    aac: string;
                    attestationChallengeNonce?: string;
                    loginEntryPoint: "login-home" | "landing-screen";
                    oauthQpl: { instanceId: number; markerId: number };
                    passwordTextInputId: string;
                    qpl: { instanceId: number; markerId: number };
                    recoveryTicket?: string & Brand<"RecoveryActionTicket">;
                    usernameTextInputId: string;
                    waterfallId: string;
                },
            ) => (
                ...args: [credentials: LoginInput],
            ) => Effect<
                LoginHomepageAnswer,
                | IgNotFoundError
                | IgRateLimitError
                | IgSpamError
                | IgSignupBlockError
                | IgCheckpointError
                | IgAccountSuspendedError
                | IgAccountDisabledError
                | IgCookieConsentRequiredError
                | IgLoginRequiredError
                | IgUserLoggedOutError
                | IgChallengeWrongCodeError
                | IgPrivateUserError
                | IgInactiveUserError
                | IgSentryBlockError
                | IgUploadVideoError
                | IgConfigureVideoError
                | IgExactUserNotFoundError
                | IgUserIdNotFoundError
                | IgNetworkError
                | IgDecompressionError
                | IgParseError
                | IgIpBlockError
                | IgLoginTwoFactorRequiredError
                | IgRequestsLimitError
                | IgNotResolvableError
                | RequestError
                | ParseError
                | TransportError
                | PasswordEncryptionKeysUnavailableError
                | LoginBloksParseError
                | LoginBloksRejectedError
                | LoginTwoFactorEntrypointParseError
                | LoginAccountRecoveryRequiredError
                | LoginAccountRecoveryContinueError
                | IgBloks429Error
                | IgLoginBadPasswordError
                | InvalidSkipOrdinalsError
                | AccountRecoveryBloksIssuedParamsMissingError
                | ScreenDataError
                | ScreenFeedPageError
                | ScreenEnterNavigationError
                | ScreenEnterConcurrentError
                | ScreenLaunchFirstScreenError
                | ScreenLaunchScreenNotInCatalogError
                | ScreenLaunchSplashNotOnTopError
                | ScreenLaunchSplashScreenError
                | AppAlreadyStartedError
                | ProcessNotSignedInError
                | AccountRecoveryTicketUnknownError
                | ScreenEdgeInputError
                | ScreenNotOnTopError
                | TwoFactorTicketUnknownError,
                | PlainJsonApiHttp
                | MobileSession
                | MobileDevice
                | MobileApplication
                | SessionHeaderParser
                | BloksHttp
                | MobileNavigation
                | AccountRecoveryTickets
                | ScreenCatalog
                | ScreenStack
                | TwoFactorTickets,
            >;
            openApproveFromAnotherDevice: <Self extends ScreenHandle>(
                self: Self,
                state: {
                    aac: string;
                    attestationChallengeNonce?: string;
                    loginEntryPoint: "login-home" | "landing-screen";
                    oauthQpl: { instanceId: number; markerId: number };
                    passwordTextInputId: string;
                    qpl: { instanceId: number; markerId: number };
                    recoveryTicket?: string & Brand<"RecoveryActionTicket">;
                    usernameTextInputId: string;
                    waterfallId: string;
                },
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    ScreenDefinition<
                        "LoginTwoFactorEntrypoint",
                        "screen",
                        undefined,
                        { ticket: string & Brand<"TwoFactorApprovalTicket"> },
                        LoginTwoFactorApproveFromAnotherDeviceState,

                            | InvalidSkipOrdinalsError
                            | ScreenEnterNavigationError
                            | TwoFactorTicketUnknownError,
                        MobileNavigation
                        | TwoFactorTickets,
                        {
                            checkApproval: (
                                self: ScreenHandle,
                                state: LoginTwoFactorApproveFromAnotherDeviceState,
                            ) => (
                                ...args: [],
                            ) => Effect<
                                LoginTwoFactorApproveFromAnotherDeviceCheck,
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...),
                                (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...),
                            >;
                            tryAnotherWay: (
                                self: ScreenHandle,
                                state: LoginTwoFactorApproveFromAnotherDeviceState,
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<
                                    ScreenDefinition<
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                    >,
                                    [],
                                    "button",
                                >,
                                (...args: []) => Effect<(...), (...), (...)>,
                            >;
                        },
                        Record<never, never>,
                        never,
                    >,
                    [],
                    "button",
                >,
                (
                    ...args: [],
                ) => Effect<
                    AssembledHandle<
                        "LoginTwoFactorEntrypoint",
                        "screen",
                        { ticket: string & Brand<"TwoFactorApprovalTicket"> },
                        {
                            checkApproval: (
                                self: ScreenHandle,
                                state: LoginTwoFactorApproveFromAnotherDeviceState,
                            ) => (...args: []) => Effect<(...), (...), (...)>;
                            tryAnotherWay: (
                                self: ScreenHandle,
                                state: LoginTwoFactorApproveFromAnotherDeviceState,
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<(...), (...), (...)>,
                                (...args: ...) => ...,
                            >;
                        },
                        Record<never, never>,
                        Self,
                        "required",
                        true,
                    >,

                        | InvalidSkipOrdinalsError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError
                        | TwoFactorTicketUnknownError,
                    MobileNavigation
                    | ScreenCatalog
                    | ScreenStack
                    | TwoFactorTickets,
                >,
            >;
            openEmailCode: <Self extends ScreenHandle>(
                self: Self,
                state: {
                    aac: string;
                    attestationChallengeNonce?: string;
                    loginEntryPoint: "login-home" | "landing-screen";
                    oauthQpl: { instanceId: number; markerId: number };
                    passwordTextInputId: string;
                    qpl: { instanceId: number; markerId: number };
                    recoveryTicket?: string & Brand<"RecoveryActionTicket">;
                    usernameTextInputId: string;
                    waterfallId: string;
                },
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    ScreenDefinition<
                        "AccountRecoveryEmailCode",
                        "screen",
                        undefined,
                        {
                            maskedContact?: string;
                            ticket: string & Brand<"LastResortCodeEntryTicket">;
                        },
                        {
                            maskedContact?: string;
                            ticket: string & Brand<"LastResortCodeEntryTicket">;
                        },
                        | BloksHttpError
                        | InvalidSkipOrdinalsError
                        | AccountRecoveryBloksIssuedParamsMissingError
                        | ScreenEnterNavigationError
                        | AccountRecoveryTicketUnknownError,
                        | MobileSession
                        | MobileDevice
                        | MobileApplication
                        | BloksHttp
                        | MobileNavigation
                        | AccountRecoveryTickets,
                        {
                            requestNewCode: (
                                self: ScreenHandle,
                                state: { maskedContact?: string; ticket: string & Brand<(...)> },
                            ) => (
                                ...args: [],
                            ) => Effect<
                                (...)
                                | (...),

                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...)
                                    | (...),
                                (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...),
                            >;
                            submitCode: (
                                self: ScreenHandle,
                                state: { maskedContact?: string; ticket: string & Brand<(...)> },
                            ) => (
                                ...args: [code: string],
                            ) => Effect<
                                AccountRecoveryFirstScreen,
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...),
                                (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...),
                            >;
                        },
                        Record<never, never>,
                        never,
                    >,
                    [],
                    "button",
                >,
                (
                    ...args: [],
                ) => Effect<
                    AssembledHandle<
                        "AccountRecoveryEmailCode",
                        "screen",
                        {
                            maskedContact?: string;
                            ticket: string & Brand<"LastResortCodeEntryTicket">;
                        },
                        {
                            requestNewCode: (
                                self: ScreenHandle,
                                state: { maskedContact?: (...) | (...); ticket: (...) & (...) },
                            ) => (...args: []) => Effect<(...), (...), (...)>;
                            submitCode: (
                                self: ScreenHandle,
                                state: { maskedContact?: (...) | (...); ticket: (...) & (...) },
                            ) => (...args: [code: ...]) => Effect<(...), (...), (...)>;
                        },
                        Record<never, never>,
                        Self,
                        "required",
                        true,
                    >,

                        | BloksHttpError
                        | InvalidSkipOrdinalsError
                        | AccountRecoveryBloksIssuedParamsMissingError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | AccountRecoveryTicketUnknownError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError,
                    | MobileSession
                    | MobileDevice
                    | MobileApplication
                    | BloksHttp
                    | MobileNavigation
                    | AccountRecoveryTickets
                    | ScreenCatalog
                    | ScreenStack,
                >,
            >;
            openMethodPicker: <Self extends ScreenHandle>(
                self: Self,
                state: {
                    aac: string;
                    attestationChallengeNonce?: string;
                    loginEntryPoint: "login-home" | "landing-screen";
                    oauthQpl: { instanceId: number; markerId: number };
                    passwordTextInputId: string;
                    qpl: { instanceId: number; markerId: number };
                    recoveryTicket?: string & Brand<"RecoveryActionTicket">;
                    usernameTextInputId: string;
                    waterfallId: string;
                },
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    ScreenDefinition<
                        "LoginTwoFactorMethodPicker",
                        "screen",
                        { ticket?: string & Brand<"TwoFactorApprovalTicket"> },
                        {
                            offeredMethods: readonly (
                                | "approve_from_another_device"
                                | "whatsapp"
                                | "totp"
                                | "sms"
                                | "backup_codes"
                            )[];
                            preselected?: | "approve_from_another_device"
                            | "whatsapp"
                            | "totp"
                            | "sms"
                            | "backup_codes";
                            ticket: string & Brand<"TwoFactorPickerTicket">;
                        },
                        LoginTwoFactorChooseMethodState,
                        | BloksHttpError
                        | InvalidSkipOrdinalsError
                        | ScreenEnterNavigationError
                        | TwoFactorTicketUnknownError,
                        | MobileDevice
                        | MobileApplication
                        | BloksHttp
                        | MobileNavigation
                        | TwoFactorTickets,
                        {
                            chooseAuthenticationApp: (
                                self: ScreenHandle,
                                state: LoginTwoFactorChooseMethodState,
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<
                                    ScreenDefinition<
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                    >,
                                    [],
                                    "button",
                                >,
                                (...args: []) => Effect<(...), (...), (...)>,
                            >;
                        },
                        Record<never, never>,
                        never,
                    >,
                    [],
                    "button",
                >,
                (
                    ...args: [],
                ) => Effect<
                    AssembledHandle<
                        "LoginTwoFactorMethodPicker",
                        "screen",
                        {
                            offeredMethods: readonly (
                                | "approve_from_another_device"
                                | "whatsapp"
                                | "totp"
                                | "sms"
                                | "backup_codes"
                            )[];
                            preselected?: | "approve_from_another_device"
                            | "whatsapp"
                            | "totp"
                            | "sms"
                            | "backup_codes";
                            ticket: string & Brand<"TwoFactorPickerTicket">;
                        },
                        {
                            chooseAuthenticationApp: (
                                self: ScreenHandle,
                                state: LoginTwoFactorChooseMethodState,
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<(...), (...), (...)>,
                                (...args: ...) => ...,
                            >;
                        },
                        Record<never, never>,
                        Self,
                        "required",
                        true,
                    >,

                        | BloksHttpError
                        | InvalidSkipOrdinalsError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError
                        | TwoFactorTicketUnknownError,
                    | MobileDevice
                    | MobileApplication
                    | BloksHttp
                    | MobileNavigation
                    | ScreenCatalog
                    | ScreenStack
                    | TwoFactorTickets,
                >,
            >;
            recoverPassword: (
                self: ScreenHandle,
                state: {
                    aac: string;
                    attestationChallengeNonce?: string;
                    loginEntryPoint: "login-home" | "landing-screen";
                    oauthQpl: { instanceId: number; markerId: number };
                    passwordTextInputId: string;
                    qpl: { instanceId: number; markerId: number };
                    recoveryTicket?: string & Brand<"RecoveryActionTicket">;
                    usernameTextInputId: string;
                    waterfallId: string;
                },
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    ScreenDefinition<
                        "AccountRecoverySearch",
                        "screen",
                        { aac: string; ticket?: string & Brand<"RecoveryActionTicket"> },
                        {
                            aac: string;
                            searchScreenType: string;
                            searchTicket: string & Brand<"SearchTicket">;
                            textInputId: string;
                            waterfallId: string;
                        },
                        {
                            aac: string;
                            searchScreenType: string;
                            searchTicket: string & Brand<"SearchTicket">;
                            textInputId: string;
                            waterfallId: string;
                        },
                        | BloksHttpError
                        | InvalidSkipOrdinalsError
                        | AccountRecoveryBloksIssuedParamsMissingError
                        | ScreenEnterNavigationError
                        | AccountRecoveryTicketUnknownError,
                        | MobileDevice
                        | MobileApplication
                        | BloksHttp
                        | MobileNavigation
                        | AccountRecoveryTickets,
                        {
                            findAccount: (
                                self: ScreenHandle,
                                state: {
                                    aac: string;
                                    searchScreenType: string;
                                    searchTicket: string & Brand<(...)>;
                                    textInputId: string;
                                    waterfallId: string;
                                },
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<
                                    ScreenDefinition<
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                    >,
                                    readonly [(...)],
                                    "button",
                                >,
                                (...args: readonly [(...)]) => Effect<(...), (...), (...)>,
                            >;
                        },
                        Record<never, never>,
                        never,
                    >,
                    [],
                    "button",
                >,
                (
                    ...args: [],
                ) => Effect<
                    AssembledHandle<
                        "AccountRecoverySearch",
                        "screen",
                        {
                            aac: string;
                            searchScreenType: string;
                            searchTicket: string & Brand<"SearchTicket">;
                            textInputId: string;
                            waterfallId: string;
                        },
                        {
                            findAccount: (
                                self: ScreenHandle,
                                state: {
                                    aac: string;
                                    searchScreenType: string;
                                    searchTicket: (...) & (...);
                                    textInputId: string;
                                    waterfallId: string;
                                },
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<(...), (...), (...)>,
                                (...args: ...) => ...,
                            >;
                        },
                        Record<never, never>,
                        ScreenHandle,
                        "required",
                        true,
                    >,

                        | BloksHttpError
                        | InvalidSkipOrdinalsError
                        | AccountRecoveryBloksIssuedParamsMissingError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | AccountRecoveryTicketUnknownError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError,
                    | MobileDevice
                    | MobileApplication
                    | BloksHttp
                    | MobileNavigation
                    | AccountRecoveryTickets
                    | ScreenCatalog
                    | ScreenStack,
                >,
            >;
        },
        Record<never, never>,
        never,
    >
    LoginTwoFactorEnterTotpCode: ScreenDefinition<
        "LoginTwoFactorEnterTotpCode",
        "screen",
        { ticket: string & Brand<"TwoFactorPickerTicket"> },
        { ticket: string & Brand<"TwoFactorCodeTicket"> },
        LoginTwoFactorAuthenticationAppCodeState,

            | BloksHttpError
            | InvalidSkipOrdinalsError
            | TwoFactorBloksIssuedIdMissingError
            | ScreenEnterNavigationError
            | TwoFactorTicketUnknownError,
        | MobileDevice
        | MobileApplication
        | BloksHttp
        | MobileNavigation
        | TwoFactorTickets,
        {
            checkApproval: (
                self: ScreenHandle,
                state: LoginTwoFactorAuthenticationAppCodeState,
            ) => (
                ...args: [],
            ) => Effect<
                LoginTwoFactorAuthenticationAppCodeCheck,
                | IgNotFoundError
                | IgRateLimitError
                | IgSpamError
                | IgSignupBlockError
                | IgCheckpointError
                | IgAccountSuspendedError
                | IgAccountDisabledError
                | IgCookieConsentRequiredError
                | IgLoginRequiredError
                | IgUserLoggedOutError
                | IgChallengeWrongCodeError
                | IgPrivateUserError
                | IgInactiveUserError
                | IgSentryBlockError
                | IgUploadVideoError
                | IgConfigureVideoError
                | IgExactUserNotFoundError
                | IgUserIdNotFoundError
                | IgNetworkError
                | IgDecompressionError
                | IgParseError
                | IgIpBlockError
                | IgLoginTwoFactorRequiredError
                | IgRequestsLimitError
                | IgNotResolvableError
                | RequestError
                | ParseError
                | TransportError
                | LoginBloksParseError
                | IgBloks429Error
                | InvalidSkipOrdinalsError
                | TwoFactorBloksIssuedIdMissingError
                | ScreenDataError
                | ScreenFeedPageError
                | ScreenEnterNavigationError
                | ScreenEnterConcurrentError
                | ScreenLaunchFirstScreenError
                | ScreenLaunchScreenNotInCatalogError
                | ScreenLaunchSplashNotOnTopError
                | ScreenLaunchSplashScreenError
                | AppAlreadyStartedError
                | ProcessNotSignedInError
                | ScreenNotOnTopError
                | TwoFactorTicketUnknownError
                | LoginTwoFactorApprovalDeclinedError,
                | MobileSession
                | MobileDevice
                | MobileApplication
                | SessionHeaderParser
                | BloksHttp
                | MobileNavigation
                | ScreenStack
                | TwoFactorTickets,
            >;
            submitCode: (
                self: ScreenHandle,
                state: LoginTwoFactorAuthenticationAppCodeState,
            ) => (
                ...args: [code: string],
            ) => Effect<
                AppFirstScreen,
                | IgNotFoundError
                | IgRateLimitError
                | IgSpamError
                | IgSignupBlockError
                | IgCheckpointError
                | IgAccountSuspendedError
                | IgAccountDisabledError
                | IgCookieConsentRequiredError
                | IgLoginRequiredError
                | IgUserLoggedOutError
                | IgChallengeWrongCodeError
                | IgPrivateUserError
                | IgInactiveUserError
                | IgSentryBlockError
                | IgUploadVideoError
                | IgConfigureVideoError
                | IgExactUserNotFoundError
                | IgUserIdNotFoundError
                | IgNetworkError
                | IgDecompressionError
                | IgParseError
                | IgIpBlockError
                | IgLoginTwoFactorRequiredError
                | IgRequestsLimitError
                | IgNotResolvableError
                | RequestError
                | ParseError
                | TransportError
                | LoginBloksParseError
                | IgBloks429Error
                | InvalidSkipOrdinalsError
                | TwoFactorBloksIssuedIdMissingError
                | TwoFactorBloksLoginResponseNotFoundError
                | ScreenDataError
                | ScreenFeedPageError
                | ScreenEnterNavigationError
                | ScreenEnterConcurrentError
                | ScreenLaunchFirstScreenError
                | ScreenLaunchScreenNotInCatalogError
                | ScreenLaunchSplashNotOnTopError
                | ScreenLaunchSplashScreenError
                | AppAlreadyStartedError
                | ProcessNotSignedInError
                | ScreenNotOnTopError
                | TwoFactorTicketUnknownError
                | LoginTwoFactorAuthenticationAppCodeRejectedError,
                | MobileSession
                | MobileDevice
                | MobileApplication
                | SessionHeaderParser
                | BloksHttp
                | MobileNavigation
                | ScreenStack
                | TwoFactorTickets,
            >;
        },
        Record<never, never>,
        never,
    >
    LoginTwoFactorEntrypoint: ScreenDefinition<
        "LoginTwoFactorEntrypoint",
        "screen",
        undefined,
        { ticket: string & Brand<"TwoFactorApprovalTicket"> },
        LoginTwoFactorApproveFromAnotherDeviceState,

            | InvalidSkipOrdinalsError
            | ScreenEnterNavigationError
            | TwoFactorTicketUnknownError,
        MobileNavigation
        | TwoFactorTickets,
        {
            checkApproval: (
                self: ScreenHandle,
                state: LoginTwoFactorApproveFromAnotherDeviceState,
            ) => (
                ...args: [],
            ) => Effect<
                LoginTwoFactorApproveFromAnotherDeviceCheck,
                | IgNotFoundError
                | IgRateLimitError
                | IgSpamError
                | IgSignupBlockError
                | IgCheckpointError
                | IgAccountSuspendedError
                | IgAccountDisabledError
                | IgCookieConsentRequiredError
                | IgLoginRequiredError
                | IgUserLoggedOutError
                | IgChallengeWrongCodeError
                | IgPrivateUserError
                | IgInactiveUserError
                | IgSentryBlockError
                | IgUploadVideoError
                | IgConfigureVideoError
                | IgExactUserNotFoundError
                | IgUserIdNotFoundError
                | IgNetworkError
                | IgDecompressionError
                | IgParseError
                | IgIpBlockError
                | IgLoginTwoFactorRequiredError
                | IgRequestsLimitError
                | IgNotResolvableError
                | RequestError
                | ParseError
                | TransportError
                | LoginBloksParseError
                | IgBloks429Error
                | InvalidSkipOrdinalsError
                | ScreenDataError
                | ScreenFeedPageError
                | ScreenEnterNavigationError
                | ScreenEnterConcurrentError
                | ScreenLaunchFirstScreenError
                | ScreenLaunchScreenNotInCatalogError
                | ScreenLaunchSplashNotOnTopError
                | ScreenLaunchSplashScreenError
                | AppAlreadyStartedError
                | ProcessNotSignedInError
                | ScreenNotOnTopError
                | TwoFactorTicketUnknownError
                | LoginTwoFactorApprovalDeclinedError,
                | MobileSession
                | MobileDevice
                | MobileApplication
                | SessionHeaderParser
                | BloksHttp
                | MobileNavigation
                | ScreenStack
                | TwoFactorTickets,
            >;
            tryAnotherWay: (
                self: ScreenHandle,
                state: LoginTwoFactorApproveFromAnotherDeviceState,
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    ScreenDefinition<
                        "LoginTwoFactorMethodPicker",
                        "screen",
                        { ticket?: string & Brand<"TwoFactorApprovalTicket"> },
                        {
                            offeredMethods: readonly (
                                | "approve_from_another_device"
                                | "whatsapp"
                                | "totp"
                                | "sms"
                                | "backup_codes"
                            )[];
                            preselected?: | "approve_from_another_device"
                            | "whatsapp"
                            | "totp"
                            | "sms"
                            | "backup_codes";
                            ticket: string & Brand<"TwoFactorPickerTicket">;
                        },
                        LoginTwoFactorChooseMethodState,
                        | BloksHttpError
                        | InvalidSkipOrdinalsError
                        | ScreenEnterNavigationError
                        | TwoFactorTicketUnknownError,
                        | MobileDevice
                        | MobileApplication
                        | BloksHttp
                        | MobileNavigation
                        | TwoFactorTickets,
                        {
                            chooseAuthenticationApp: (
                                self: ScreenHandle,
                                state: LoginTwoFactorChooseMethodState,
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<
                                    ScreenDefinition<
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                    >,
                                    [],
                                    "button",
                                >,
                                (...args: []) => Effect<(...), (...), (...)>,
                            >;
                        },
                        Record<never, never>,
                        never,
                    >,
                    [],
                    "button",
                >,
                (
                    ...args: [],
                ) => Effect<
                    AssembledHandle<
                        "LoginTwoFactorMethodPicker",
                        "screen",
                        {
                            offeredMethods: readonly (
                                | "approve_from_another_device"
                                | "whatsapp"
                                | "totp"
                                | "sms"
                                | "backup_codes"
                            )[];
                            preselected?: | "approve_from_another_device"
                            | "whatsapp"
                            | "totp"
                            | "sms"
                            | "backup_codes";
                            ticket: string & Brand<"TwoFactorPickerTicket">;
                        },
                        {
                            chooseAuthenticationApp: (
                                self: ScreenHandle,
                                state: LoginTwoFactorChooseMethodState,
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<(...), (...), (...)>,
                                (...args: ...) => ...,
                            >;
                        },
                        Record<never, never>,
                        ScreenHandle,
                        "required",
                        true,
                    >,

                        | BloksHttpError
                        | InvalidSkipOrdinalsError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError
                        | TwoFactorTicketUnknownError,
                    | MobileDevice
                    | MobileApplication
                    | BloksHttp
                    | MobileNavigation
                    | ScreenCatalog
                    | ScreenStack
                    | TwoFactorTickets,
                >,
            >;
        },
        Record<never, never>,
        never,
    >
    LoginTwoFactorMethodPicker: ScreenDefinition<
        "LoginTwoFactorMethodPicker",
        "screen",
        { ticket?: string & Brand<"TwoFactorApprovalTicket"> },
        {
            offeredMethods: readonly (
                | "approve_from_another_device"
                | "whatsapp"
                | "totp"
                | "sms"
                | "backup_codes"
            )[];
            preselected?: | "approve_from_another_device"
            | "whatsapp"
            | "totp"
            | "sms"
            | "backup_codes";
            ticket: string & Brand<"TwoFactorPickerTicket">;
        },
        LoginTwoFactorChooseMethodState,
        | BloksHttpError
        | InvalidSkipOrdinalsError
        | ScreenEnterNavigationError
        | TwoFactorTicketUnknownError,
        | MobileDevice
        | MobileApplication
        | BloksHttp
        | MobileNavigation
        | TwoFactorTickets,
        {
            chooseAuthenticationApp: (
                self: ScreenHandle,
                state: LoginTwoFactorChooseMethodState,
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    ScreenDefinition<
                        "LoginTwoFactorEnterTotpCode",
                        "screen",
                        { ticket: string & Brand<"TwoFactorPickerTicket"> },
                        { ticket: string & Brand<"TwoFactorCodeTicket"> },
                        LoginTwoFactorAuthenticationAppCodeState,

                            | BloksHttpError
                            | InvalidSkipOrdinalsError
                            | TwoFactorBloksIssuedIdMissingError
                            | ScreenEnterNavigationError
                            | TwoFactorTicketUnknownError,
                        | MobileDevice
                        | MobileApplication
                        | BloksHttp
                        | MobileNavigation
                        | TwoFactorTickets,
                        {
                            checkApproval: (
                                self: ScreenHandle,
                                state: LoginTwoFactorAuthenticationAppCodeState,
                            ) => (
                                ...args: [],
                            ) => Effect<
                                LoginTwoFactorAuthenticationAppCodeCheck,
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...),
                                (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...),
                            >;
                            submitCode: (
                                self: ScreenHandle,
                                state: LoginTwoFactorAuthenticationAppCodeState,
                            ) => (
                                ...args: [code: string],
                            ) => Effect<
                                AppFirstScreen,
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...),
                                (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...),
                            >;
                        },
                        Record<never, never>,
                        never,
                    >,
                    [],
                    "button",
                >,
                (
                    ...args: [],
                ) => Effect<
                    AssembledHandle<
                        "LoginTwoFactorEnterTotpCode",
                        "screen",
                        { ticket: string & Brand<"TwoFactorCodeTicket"> },
                        {
                            checkApproval: (
                                self: ScreenHandle,
                                state: LoginTwoFactorAuthenticationAppCodeState,
                            ) => (...args: []) => Effect<(...), (...), (...)>;
                            submitCode: (
                                self: ScreenHandle,
                                state: LoginTwoFactorAuthenticationAppCodeState,
                            ) => (...args: [code: ...]) => Effect<(...), (...), (...)>;
                        },
                        Record<never, never>,
                        ScreenHandle,
                        "required",
                        true,
                    >,

                        | BloksHttpError
                        | InvalidSkipOrdinalsError
                        | TwoFactorBloksIssuedIdMissingError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError
                        | TwoFactorTicketUnknownError,
                    | MobileDevice
                    | MobileApplication
                    | BloksHttp
                    | MobileNavigation
                    | ScreenCatalog
                    | ScreenStack
                    | TwoFactorTickets,
                >,
            >;
        },
        Record<never, never>,
        never,
    >
    MediaComments: ScreenDefinition<
        "MediaComments",
        "screen",
        | {
            carouselIndex?: string
            | number;
            commentSessionId?: string;
            feedPosition?: string | number;
            mediaId: string;
            surface: "feed";
        }
        | {
            chainingPosition?: string
            | number;
            chainingSeedMediaId?: string;
            chainingSessionId?: string;
            clientPosition?: string | number;
            commentSessionId?: string;
            mediaId: string;
            rankingSessionId?: string;
            storyRankingToken?: string;
            surface: "reels";
        },
        {
            commentSessionId: string;
            createdMediaNoteIds: readonly string[];
            mediaId: string;
            surface: "feed"
            | "reels";
        },
        MediaCommentsState,
        InvalidSkipOrdinalsError
        | ScreenEnterNavigationError,
        MobileNavigation,
        {
            comment: (
                self: ScreenHandle,
                state: MediaCommentsState,
            ) => (
                ...args: [text: string, options?: CommentOptions],
            ) => Effect<
                MediaCommentResponse,
                | IgApiError
                | RequestError
                | ParseError
                | TransportError
                | UserIdNotFoundInState
                | ScreenEnterConcurrentError
                | ScreenNotOnTopError,
                | PlainJsonApiHttp
                | Signature
                | MobileSession
                | MobileDevice
                | MobileApplication
                | NavigationWire
                | MobileNavigation
                | ScreenStack,
            >;
        },
        Record<never, never>,
        never,
    >
    PostOpenedFromLink: ScreenDefinition<
        "PostOpenedFromLink",
        "screen",
        {
            carouselIndex?: number;
            feedPosition?: string
            | number;
            loggingInfoToken?: string;
            mediaId: string;
        },
        {
            carousel?: {
                index: number;
                noteMediaId: string;
                pk: string;
                size?: number;
            };
            mediaId: string;
            trackingToken: string;
        },
        PostOpenedFromLinkState,
        | IgApiError
        | RequestError
        | ParseError
        | TransportError
        | InvalidSkipOrdinalsError
        | ScreenDataError
        | ScreenEnterNavigationError,
        PlainJsonApiHttp
        | MobileNavigation,
        {
            like: (
                self: ScreenHandle,
                state: PostOpenedFromLinkState,
            ) => (
                ...args: [],
            ) => Effect<
                | {
                    data: {
                        xig_media_like: {
                            media: {
                                __typename?: (...)
                                | (...);
                                has_liked: boolean;
                                id: string;
                                strong_id__?: (...) | (...);
                            };
                        };
                    };
                }
                | MediaLikeRestResponse,
                | IgApiError
                | RequestError
                | ParseError
                | TransportError
                | UserIdNotFoundInState
                | SchemaError
                | GraphqlRootFieldMissingError
                | MobileMediaLikeWireNotDeclaredError
                | ScreenEnterConcurrentError
                | ScreenNotOnTopError,
                | PlainJsonApiHttp
                | Signature
                | MobileSession
                | MobileDevice
                | GraphqlJsonHttp
                | MobileApplication
                | NavigationWire
                | MobileNavigation
                | ScreenStack,
            >;
            openComments: (
                self: ScreenHandle,
                state: PostOpenedFromLinkState,
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    ScreenDefinition<
                        "MediaComments",
                        "screen",
                        | {
                            carouselIndex?: string
                            | number;
                            commentSessionId?: string;
                            feedPosition?: string | number;
                            mediaId: string;
                            surface: "feed";
                        }
                        | {
                            chainingPosition?: string
                            | number;
                            chainingSeedMediaId?: string;
                            chainingSessionId?: string;
                            clientPosition?: string | number;
                            commentSessionId?: string;
                            mediaId: string;
                            rankingSessionId?: string;
                            storyRankingToken?: string;
                            surface: "reels";
                        },
                        {
                            commentSessionId: string;
                            createdMediaNoteIds: readonly string[];
                            mediaId: string;
                            surface: "feed"
                            | "reels";
                        },
                        MediaCommentsState,
                        InvalidSkipOrdinalsError
                        | ScreenEnterNavigationError,
                        MobileNavigation,
                        {
                            comment: (
                                self: ScreenHandle,
                                state: MediaCommentsState,
                            ) => (
                                ...args: [text: string, options?: (...) | (...)],
                            ) => Effect<
                                MediaCommentResponse,
                                (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...),
                                (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...),
                            >;
                        },
                        Record<never, never>,
                        never,
                    >,
                    readonly [{ commentSessionId?: string }],
                    "button",
                >,
                (
                    ...args: readonly [{ commentSessionId?: string }],
                ) => Effect<
                    AssembledHandle<
                        "MediaComments",
                        "screen",
                        {
                            commentSessionId: string;
                            createdMediaNoteIds: readonly string[];
                            mediaId: string;
                            surface: "feed"
                            | "reels";
                        },
                        {
                            comment: (
                                self: ScreenHandle,
                                state: MediaCommentsState,
                            ) => (
                                ...args: [text: ..., options?: ...],
                            ) => Effect<(...), (...), (...)>;
                        },
                        Record<never, never>,
                        ScreenHandle,
                        "required",
                        true,
                    >,

                        | InvalidSkipOrdinalsError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError,
                    MobileNavigation
                    | ScreenCatalog
                    | ScreenStack,
                >,
            >;
            repost: (
                self: ScreenHandle,
                state: PostOpenedFromLinkState,
            ) => (
                ...args: [text?: string],
            ) => Effect<
                { note: MediaCreateNoteResponse; trackingToken: string },

                    | IgApiError
                    | RequestError
                    | ParseError
                    | TransportError
                    | UserIdNotFoundInState
                    | SchemaError
                    | GraphqlRootFieldMissingError
                    | MobileMediaLikeWireNotDeclaredError
                    | MobileMediaRepostWireNotDeclaredError
                    | MediaRepostTextTooLongError
                    | ScreenEnterConcurrentError
                    | MediaRepostTextNotAcceptedError
                    | ScreenNotOnTopError,
                | PlainJsonApiHttp
                | Signature
                | MobileSession
                | MobileDevice
                | GraphqlJsonHttp
                | MobileApplication
                | NavigationWire
                | MobileNavigation
                | ScreenStack,
            >;
        },
        Record<never, never>,
        never,
    >
    ProfilePostsFeed: SwipeableFeedScreen<
        "ProfilePostsFeed",
        "screen",
        {
            firstMediaId: string;
            firstPosition: number;
            followsAuthor?: boolean;
            media: readonly {
                authorId?: string;
                dashManifest?: string;
                id: string;
                mediaType?: number;
                takenAt?: number;
                trackingToken?: string;
                videoDuration?: number;
            }[];
            pageCursor?: { gridItemsCursor: string; maxId: string };
            userId: string;
        },
        ProfilePostsFeedCursor,
        {
            media: readonly {
                authorId?: string;
                dashManifest?: string;
                followsAuthor?: boolean;
                mediaId: string;
                mediaType: 0
                | 1
                | 2
                | 8;
                position: number;
                takenAt?: number;
                trackingToken?: string;
                videoDuration?: number;
            }[];
            next?: { gridItemsCursor: string; maxId: string };
            nextPosition: number;
        },
        | IgApiError
        | RequestError
        | ParseError
        | TransportError
        | SchemaError
        | GraphqlRootFieldMissingError,
        GraphqlJsonHttp
        | MobileApplication,

            | IgApiError
            | RequestError
            | ParseError
            | TransportError
            | SchemaError
            | GraphqlRootFieldMissingError
            | InvalidSkipOrdinalsError
            | ScreenDataError
            | ScreenFeedPageError
            | ScreenEnterNavigationError,
        GraphqlJsonHttp
        | MobileApplication
        | MobileNavigation,
        {},
        {
            at: "media";
            by: "mediaType";
            key: "mediaId";
            variants: {
                "0": ScreenItemDefinition<
                    "ProfilePostsFeedMedia",
                    {
                        authorId?: string;
                        dashManifest?: string;
                        followsAuthor?: boolean;
                        mediaId: string;
                        mediaType: 0
                        | 1
                        | 2
                        | 8;
                        position: number;
                        takenAt?: number;
                        trackingToken?: string;
                        videoDuration?: number;
                    },
                    {
                        authorId?: string;
                        dashManifest?: string;
                        followsAuthor?: boolean;
                        mediaId: string;
                        mediaType: 0
                        | 1
                        | 2
                        | 8;
                        position: number;
                        takenAt?: number;
                        trackingToken?: string;
                        videoDuration?: number;
                    },
                    ProfilePostsFeedMediaState,
                    never,
                    never,
                    {
                        like: (
                            self: ScreenHandle,
                            state: ProfilePostsFeedMediaState,
                        ) => (
                            ...args: [],
                        ) => Effect<
                            { data: { xig_media_like: ... } }
                            | MediaLikeRestResponse,

                                | IgApiError
                                | RequestError
                                | ParseError
                                | TransportError
                                | UserIdNotFoundInState
                                | SchemaError
                                | GraphqlRootFieldMissingError
                                | MobileMediaLikeWireNotDeclaredError
                                | ScreenEnterConcurrentError
                                | ScreenNotOnTopError,
                            | PlainJsonApiHttp
                            | Signature
                            | MobileSession
                            | MobileDevice
                            | GraphqlJsonHttp
                            | MobileApplication
                            | NavigationWire
                            | MobileNavigation
                            | ScreenStack,
                        >;
                    },
                >;
                "1": ScreenItemDefinition<
                    "ProfilePostsFeedPhoto",
                    {
                        authorId?: string;
                        dashManifest?: string;
                        followsAuthor?: boolean;
                        mediaId: string;
                        mediaType: 0
                        | 1
                        | 2
                        | 8;
                        position: number;
                        takenAt?: number;
                        trackingToken?: string;
                        videoDuration?: number;
                    },
                    {
                        authorId?: string;
                        dashManifest?: string;
                        followsAuthor?: boolean;
                        mediaId: string;
                        mediaType: 0
                        | 1
                        | 2
                        | 8;
                        position: number;
                        takenAt?: number;
                        trackingToken?: string;
                        videoDuration?: number;
                    },
                    ProfilePostsFeedMediaState,
                    never,
                    never,
                    {
                        like: (
                            self: ScreenHandle,
                            state: ProfilePostsFeedMediaState,
                        ) => (
                            ...args: [],
                        ) => Effect<
                            { data: { xig_media_like: ... } }
                            | MediaLikeRestResponse,

                                | IgApiError
                                | RequestError
                                | ParseError
                                | TransportError
                                | UserIdNotFoundInState
                                | SchemaError
                                | GraphqlRootFieldMissingError
                                | MobileMediaLikeWireNotDeclaredError
                                | ScreenEnterConcurrentError
                                | ScreenNotOnTopError,
                            | PlainJsonApiHttp
                            | Signature
                            | MobileSession
                            | MobileDevice
                            | GraphqlJsonHttp
                            | MobileApplication
                            | NavigationWire
                            | MobileNavigation
                            | ScreenStack,
                        >;
                    },
                >;
                "2": ScreenItemDefinition<
                    "ProfilePostsFeedVideo",
                    {
                        authorId?: string;
                        dashManifest?: string;
                        followsAuthor?: boolean;
                        mediaId: string;
                        mediaType: 0
                        | 1
                        | 2
                        | 8;
                        position: number;
                        takenAt?: number;
                        trackingToken?: string;
                        videoDuration?: number;
                    },
                    {
                        authorId?: string;
                        dashManifest?: string;
                        followsAuthor?: boolean;
                        mediaId: string;
                        mediaType: 0
                        | 1
                        | 2
                        | 8;
                        position: number;
                        takenAt?: number;
                        trackingToken?: string;
                        videoDuration?: number;
                    },
                    ProfilePostsFeedVideoState,
                    never,
                    | MobileSession
                    | MobileDevice
                    | NavigationWire
                    | MobileTelemetry
                    | MobileNetworkWire,
                    {
                        like: (
                            self: ScreenHandle,
                            state: ProfilePostsFeedMediaState,
                        ) => (
                            ...args: [],
                        ) => Effect<
                            { data: { xig_media_like: ... } }
                            | MediaLikeRestResponse,

                                | IgApiError
                                | RequestError
                                | ParseError
                                | TransportError
                                | UserIdNotFoundInState
                                | SchemaError
                                | GraphqlRootFieldMissingError
                                | MobileMediaLikeWireNotDeclaredError
                                | ScreenEnterConcurrentError
                                | ScreenNotOnTopError,
                            | PlainJsonApiHttp
                            | Signature
                            | MobileSession
                            | MobileDevice
                            | GraphqlJsonHttp
                            | MobileApplication
                            | NavigationWire
                            | MobileNavigation
                            | ScreenStack,
                        >;
                    },
                >;
                "8": ScreenItemDefinition<
                    "ProfilePostsFeedCarousel",
                    {
                        authorId?: string;
                        dashManifest?: string;
                        followsAuthor?: boolean;
                        mediaId: string;
                        mediaType: 0
                        | 1
                        | 2
                        | 8;
                        position: number;
                        takenAt?: number;
                        trackingToken?: string;
                        videoDuration?: number;
                    },
                    {
                        authorId?: string;
                        dashManifest?: string;
                        followsAuthor?: boolean;
                        mediaId: string;
                        mediaType: 0
                        | 1
                        | 2
                        | 8;
                        position: number;
                        takenAt?: number;
                        trackingToken?: string;
                        videoDuration?: number;
                    },
                    ProfilePostsFeedMediaState,
                    never,
                    never,
                    {
                        like: (
                            self: ScreenHandle,
                            state: ProfilePostsFeedMediaState,
                        ) => (
                            ...args: [],
                        ) => Effect<
                            { data: { xig_media_like: ... } }
                            | MediaLikeRestResponse,

                                | IgApiError
                                | RequestError
                                | ParseError
                                | TransportError
                                | UserIdNotFoundInState
                                | SchemaError
                                | GraphqlRootFieldMissingError
                                | MobileMediaLikeWireNotDeclaredError
                                | ScreenEnterConcurrentError
                                | ScreenNotOnTopError,
                            | PlainJsonApiHttp
                            | Signature
                            | MobileSession
                            | MobileDevice
                            | GraphqlJsonHttp
                            | MobileApplication
                            | NavigationWire
                            | MobileNavigation
                            | ScreenStack,
                        >;
                    },
                >;
            };
        },
        never,
        never,
    >
    RegistrationBirthday: RegistrationBirthdayDefinition
    RegistrationConfirmationCode: RegistrationConfirmationCodeDefinition
    RegistrationName: RegistrationNameDefinition
    RegistrationPassword: RegistrationPasswordDefinition
    RegistrationPhoneNumber: RegistrationPhoneNumberDefinition
    RegistrationTermsOfService: RegistrationTermsOfServiceDefinition
    RegistrationUsername: RegistrationUsernameDefinition
    RepostNoteEditor: ScreenDefinition<
        "RepostNoteEditor",
        "screen",
        { mediaId: string; noteId: string; trackingToken: string },
        { mediaId: string; noteId: string },
        RepostNoteEditorState,

            | InvalidSkipOrdinalsError
            | ScreenEnterNavigationError
            | RepostNoteEditorUnavailableError,
        MobileApplication
        | MobileNavigation,
        {
            post: (
                self: ScreenHandle,
                state: RepostNoteEditorState,
            ) => (
                ...args: [text: string],
            ) => Effect<
                {
                    data: {
                        xdt_update_media_note_repost_text: { id: string; text: string };
                    };
                },
                | IgApiError
                | RequestError
                | ParseError
                | TransportError
                | SchemaError
                | GraphqlRootFieldMissingError
                | MediaRepostTextTooLongError
                | ScreenEnterConcurrentError
                | ScreenNotOnTopError,
                GraphqlJsonHttp
                | MobileApplication
                | MobileNavigation
                | ScreenStack,
            >;
        },
        Record<never, never>,
        never,
    >
    SearchInput: ScreenDefinition<
        "SearchInput",
        "screen",
        | {
            lastSeenMedia?: readonly {
                mediaIds: readonly string[];
                surfaceType: string;
                timestamp: number;
            }[];
            query: string;
            session?: {
                clientUuidRankToken?: string;
                searchSessionId: string;
                serpSessionId?: string;
                typeaheadSessionId?: string;
            };
        }
        | {
            recent: readonly { fullName: string; userId: string; username: string }[];
        },
        {
            query: string;
            rankToken: string;
            recentAccounts: readonly {
                fullName: string;
                userId: string;
                username: string;
            }[];
            results: readonly (
                | {
                    __typename: "XDTTypeaheadSearchKeyword";
                    keyword_lazified: {
                        id: string;
                        name: string;
                        user?: | {
                            full_name?: string;
                            id: string;
                            is_private?: boolean;
                            is_verified?: boolean;
                            latest_reel_media?: number
                            | null;
                            profile_pic_url?: string;
                            search_serp_type?: number | null;
                            username: string;
                        }
                        | null;
                    };
                }
                | {
                    __typename: "XDTTypeaheadSearchUser";
                    rank_token?: string;
                    user: {
                        full_name?: string;
                        id: string;
                        is_private?: boolean;
                        is_verified?: boolean;
                        latest_reel_media?: number
                        | null;
                        profile_pic_url?: string;
                        search_serp_type?: number | null;
                        username: string;
                    };
                }
                | {
                    __typename: "XDTTypeaheadSearchHashtag";
                    hashtag: { id: string; media_count?: number; name: string };
                }
            )[];
            session?: {
                clientUuidRankToken: string;
                searchSessionId: string;
                serpSessionId?: string;
                typeaheadSessionId: string;
            };
        },
        SearchInputState,
        | IgApiError
        | RequestError
        | ParseError
        | TransportError
        | SchemaError
        | GraphqlRootFieldMissingError
        | InvalidSkipOrdinalsError
        | ScreenEnterNavigationError,
        MobileDevice
        | GraphqlJsonHttp
        | MobileApplication
        | MobileNavigation,
        {
            change: (
                self: ScreenHandle,
                state: SearchInputState,
            ) => ScreenDataMember<
                ScreenDataShape,
                (
                    ...args: [query: string],
                ) => Effect<
                    ScreenHandle,
                    ScreenDataActionFailure<
                        | IgApiError
                        | RequestError
                        | ParseError
                        | TransportError
                        | SchemaError
                        | GraphqlRootFieldMissingError,
                    >,
                    | MobileDevice
                    | GraphqlJsonHttp
                    | MobileApplication
                    | MobileNavigation
                    | ScreenStack,
                >,
            >;
            search: (
                self: ScreenHandle,
                state: SearchInputState,
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    ScreenDefinition<
                        "SearchResultsTopTab",
                        "screen",
                        {
                            lastSeenMedia?: readonly {
                                mediaIds: readonly (...)[];
                                surfaceType: string;
                                timestamp: number;
                            }[];
                            query: string;
                            session: {
                                clientUuidRankToken: string;
                                searchSessionId: string;
                                serpSessionId?: string;
                                typeaheadSessionId: string;
                            };
                        },
                        {
                            query: string;
                            session: {
                                clientUuidRankToken?: string;
                                searchSessionId: string;
                                serpSessionId: string;
                                typeaheadSessionId?: string;
                            };
                        },
                        {
                            query: string;
                            session: {
                                clientUuidRankToken?: string;
                                searchSessionId: string;
                                serpSessionId: string;
                                typeaheadSessionId?: string;
                            };
                        },
                        | IgApiError
                        | RequestError
                        | ParseError
                        | TransportError
                        | InvalidSkipOrdinalsError
                        | ScreenEnterNavigationError,
                        | PlainJsonApiHttp
                        | MobileDevice
                        | GraphqlJsonHttp
                        | MobileApplication
                        | MobileNavigation,
                        {
                            openUsers: (
                                self: ScreenHandle,
                                state: {
                                    query: string;
                                    session: {
                                        clientUuidRankToken?: (...) | (...);
                                        searchSessionId: string;
                                        serpSessionId: string;
                                        typeaheadSessionId?: (...) | (...);
                                    };
                                },
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<
                                    ScreenDefinition<
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                        (...),
                                    >,
                                    [],
                                    "search_result",
                                >,
                                (...args: []) => Effect<(...), (...), (...)>,
                            >;
                        },
                        Record<never, never>,
                        never,
                    >,
                    readonly [string],
                    "search_result",
                >,
                (
                    ...args: readonly [string],
                ) => Effect<
                    AssembledHandle<
                        "SearchResultsTopTab",
                        "screen",
                        {
                            query: string;
                            session: {
                                clientUuidRankToken?: string;
                                searchSessionId: string;
                                serpSessionId: string;
                                typeaheadSessionId?: string;
                            };
                        },
                        {
                            openUsers: (
                                self: ScreenHandle,
                                state: {
                                    query: string;
                                    session: {
                                        clientUuidRankToken?: ...;
                                        searchSessionId: ...;
                                        serpSessionId: ...;
                                        typeaheadSessionId?: ...;
                                    };
                                },
                            ) => ScreenEdgeBound<
                                ScreenEdgeShape<(...), (...), (...)>,
                                (...args: ...) => ...,
                            >;
                        },
                        Record<never, never>,
                        ScreenHandle,
                        "required",
                        true,
                    >,

                        | IgApiError
                        | RequestError
                        | ParseError
                        | TransportError
                        | InvalidSkipOrdinalsError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | ScreenEdgeInputError
                        | ScreenNotOnTopError,
                    | PlainJsonApiHttp
                    | MobileDevice
                    | GraphqlJsonHttp
                    | MobileApplication
                    | MobileNavigation
                    | ScreenCatalog
                    | ScreenStack,
                >,
            >;
        },
        {
            recentAccounts: {
                at: "recentAccounts";
                item: ScreenItemDefinition<
                    "RecentSearchAccount",
                    { fullName: string; userId: string; username: string },
                    { fullName: string; userId: string; username: string },
                    RecentSearchAccountState,
                    never,
                    never,
                    {
                        openProfile: (
                            self: ScreenHandle,
                            state: RecentSearchAccountState,
                        ) => ScreenEdgeBound<
                            ScreenEdgeShape<
                                UserProfileDefinition,
                                [],

                                    | "inbox"
                                    | "tab"
                                    | "cold_start"
                                    | "warm_start"
                                    | "button"
                                    | "search_result"
                                    | "suggested_users"
                                    | "third_party_url",
                            >,
                            (
                                ...args: [],
                            ) => Effect<
                                AssembledHandle<
                                    "UserProfile",
                                    "screen",
                                    {
                                        backgroundFailures: ...;
                                        following?: ...;
                                        isPrivate: ...;
                                        media: ...;
                                        suggested: ...;
                                        userId: ...;
                                        username: ...;
                                    },
                                    ProfileActions,
                                    { grid: ...; suggestedUsers: ... },
                                    ScreenHandle,
                                    "required",
                                    true,
                                >,

                                    | IgApiError
                                    | RequestError
                                    | ParseError
                                    | TransportError
                                    | SchemaError
                                    | GraphqlRootFieldMissingError
                                    | InvalidSkipOrdinalsError
                                    | ScreenDataError
                                    | ScreenEnterNavigationError
                                    | ScreenEnterConcurrentError
                                    | ScreenEdgeInputError
                                    | ScreenNotOnTopError,
                                | PlainJsonApiHttp
                                | MobileDevice
                                | GraphqlJsonHttp
                                | MobileApplication
                                | NavigationWire
                                | PlainNdjsonApiHttp
                                | MobileNavigation
                                | ScreenCatalog
                                | ScreenStack,
                            >,
                        >;
                    },
                >;
                key: "userId";
            };
        },
        never,
    >
    SearchResultsAccountsTab: ScreenDefinition<
        "SearchResultsAccountsTab",
        "innerTab",
        {
            query: string;
            session: {
                clientUuidRankToken?: string;
                searchSessionId: string;
                serpSessionId: string;
                typeaheadSessionId?: string;
            };
        },
        {
            users: readonly {
                fullName: string;
                isPrivate: boolean;
                isVerified: boolean;
                userId: string;
                username: string;
            }[];
        },
        Record<never, never>,

            | IgApiError
            | RequestError
            | ParseError
            | TransportError
            | InvalidSkipOrdinalsError
            | ScreenEnterNavigationError,
        PlainJsonApiHttp
        | MobileDevice
        | NavigationWire
        | MobileNavigation,
        {},
        {
            results: {
                at: "users";
                item: ScreenItemDefinition<
                    "SearchResultsAccount",
                    {
                        fullName: string;
                        isPrivate: boolean;
                        isVerified: boolean;
                        userId: string;
                        username: string;
                    },
                    {
                        fullName: string;
                        isPrivate: boolean;
                        isVerified: boolean;
                        userId: string;
                        username: string;
                    },
                    SearchResultsAccountState,
                    never,
                    never,
                    {
                        openProfile: (
                            self: ScreenHandle,
                            state: SearchResultsAccountState,
                        ) => ScreenEdgeBound<
                            ScreenEdgeShape<
                                UserProfileDefinition,
                                [],

                                    | "inbox"
                                    | "tab"
                                    | "cold_start"
                                    | "warm_start"
                                    | "button"
                                    | "search_result"
                                    | "suggested_users"
                                    | "third_party_url",
                            >,
                            (
                                ...args: [],
                            ) => Effect<
                                AssembledHandle<
                                    "UserProfile",
                                    "screen",
                                    {
                                        backgroundFailures: ...;
                                        following?: ...;
                                        isPrivate: ...;
                                        media: ...;
                                        suggested: ...;
                                        userId: ...;
                                        username: ...;
                                    },
                                    ProfileActions,
                                    { grid: ...; suggestedUsers: ... },
                                    ScreenHandle,
                                    "required",
                                    true,
                                >,

                                    | IgApiError
                                    | RequestError
                                    | ParseError
                                    | TransportError
                                    | SchemaError
                                    | GraphqlRootFieldMissingError
                                    | InvalidSkipOrdinalsError
                                    | ScreenDataError
                                    | ScreenEnterNavigationError
                                    | ScreenEnterConcurrentError
                                    | ScreenEdgeInputError
                                    | ScreenNotOnTopError,
                                | PlainJsonApiHttp
                                | MobileDevice
                                | GraphqlJsonHttp
                                | MobileApplication
                                | NavigationWire
                                | PlainNdjsonApiHttp
                                | MobileNavigation
                                | ScreenCatalog
                                | ScreenStack,
                            >,
                        >;
                    },
                >;
                key: "userId";
            };
        },
        never,
    >
    SearchResultsTopTab: ScreenDefinition<
        "SearchResultsTopTab",
        "screen",
        {
            lastSeenMedia?: readonly {
                mediaIds: readonly string[];
                surfaceType: string;
                timestamp: number;
            }[];
            query: string;
            session: {
                clientUuidRankToken: string;
                searchSessionId: string;
                serpSessionId?: string;
                typeaheadSessionId: string;
            };
        },
        {
            query: string;
            session: {
                clientUuidRankToken?: string;
                searchSessionId: string;
                serpSessionId: string;
                typeaheadSessionId?: string;
            };
        },
        {
            query: string;
            session: {
                clientUuidRankToken?: string;
                searchSessionId: string;
                serpSessionId: string;
                typeaheadSessionId?: string;
            };
        },
        | IgApiError
        | RequestError
        | ParseError
        | TransportError
        | InvalidSkipOrdinalsError
        | ScreenEnterNavigationError,
        | PlainJsonApiHttp
        | MobileDevice
        | GraphqlJsonHttp
        | MobileApplication
        | MobileNavigation,
        {
            openUsers: (
                self: ScreenHandle,
                state: {
                    query: string;
                    session: {
                        clientUuidRankToken?: string;
                        searchSessionId: string;
                        serpSessionId: string;
                        typeaheadSessionId?: string;
                    };
                },
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    ScreenDefinition<
                        "SearchResultsAccountsTab",
                        "innerTab",
                        {
                            query: string;
                            session: {
                                clientUuidRankToken?: string;
                                searchSessionId: string;
                                serpSessionId: string;
                                typeaheadSessionId?: string;
                            };
                        },
                        {
                            users: readonly {
                                fullName: string;
                                isPrivate: boolean;
                                isVerified: boolean;
                                userId: string;
                                username: string;
                            }[];
                        },
                        Record<never, never>,

                            | IgApiError
                            | RequestError
                            | ParseError
                            | TransportError
                            | InvalidSkipOrdinalsError
                            | ScreenEnterNavigationError,
                        PlainJsonApiHttp
                        | MobileDevice
                        | NavigationWire
                        | MobileNavigation,
                        {},
                        {
                            results: {
                                at: "users";
                                item: ScreenItemDefinition<
                                    "SearchResultsAccount",
                                    {
                                        fullName: string;
                                        isPrivate: boolean;
                                        isVerified: boolean;
                                        userId: string;
                                        username: string;
                                    },
                                    {
                                        fullName: string;
                                        isPrivate: boolean;
                                        isVerified: boolean;
                                        userId: string;
                                        username: string;
                                    },
                                    SearchResultsAccountState,
                                    never,
                                    never,
                                    { openProfile: (self: ..., state: ...) => ... },
                                >;
                                key: "userId";
                            };
                        },
                        never,
                    >,
                    [],
                    "search_result",
                >,
                (
                    ...args: [],
                ) => Effect<
                    AssembledHandle<
                        "SearchResultsAccountsTab",
                        "innerTab",
                        {
                            users: readonly {
                                fullName: string;
                                isPrivate: boolean;
                                isVerified: boolean;
                                userId: string;
                                username: string;
                            }[];
                        },
                        {},
                        {
                            results: {
                                at: "users";
                                item: ScreenItemDefinition<
                                    "SearchResultsAccount",
                                    {
                                        fullName: ...;
                                        isPrivate: ...;
                                        isVerified: ...;
                                        userId: ...;
                                        username: ...;
                                    },
                                    {
                                        fullName: ...;
                                        isPrivate: ...;
                                        isVerified: ...;
                                        userId: ...;
                                        username: ...;
                                    },
                                    SearchResultsAccountState,
                                    never,
                                    never,
                                    { openProfile: ... },
                                >;
                                key: "userId";
                            };
                        },
                        ScreenHandle,
                        "required",
                        true,
                    >,
                    | IgApiError
                    | RequestError
                    | ParseError
                    | TransportError
                    | InvalidSkipOrdinalsError
                    | ScreenDataError
                    | ScreenEnterNavigationError
                    | ScreenEnterConcurrentError
                    | ScreenEdgeInputError
                    | ScreenNotOnTopError,
                    | PlainJsonApiHttp
                    | MobileDevice
                    | NavigationWire
                    | MobileNavigation
                    | ScreenCatalog
                    | ScreenStack,
                >,
            >;
        },
        Record<never, never>,
        never,
    >