IGPAPI
    Preparing search index...

    Interface AccountRecoveryTicketsValue

    The process's recovery tickets: the issued values behind the screens' opaque tickets — server state of the screen, kept for the whole process, so a repeated action (another identifier, another code, another "Forgot password") resolves the same issued values again — plus the handoff the login answer leaves for the last-resort-recovery code-entry screen. One value per runtime layer (installed by the Android app layer, like the screen stack), so a ticket issued by one runtime is not resolved by another, and the registry goes with its process — except the client state a restore hands to the new layer (RestoredAccountRecoveryTickets), which is what lets a trail from the code-entry screen retrace without replaying the password login. It is process state and belongs in a checkpoint (round-trip lands with the checkpoint unit).

    The last-resort entrypoint handoff is the same pattern as the two-factor one: the login action's issued values wait for the screen's enter, never an edge argument, so a trail step carries nothing and a retrace in a fresh process is given the handoff as a precondition (#314 carries it across processes). The methods are the library's own seam (the screens and their tests use them); a published declaration carries the empty shape, not the methods.

    interface AccountRecoveryTicketsValue {
        clearLastResortEntrypointHandOff(): void;
        handOffLastResortEntrypoint(
            issued: {
                aac: string;
                entrypointServerParams: { readonly [key: string]: unknown };
            },
        ): void;
        issueCodeEntry(issued: IssuedCodeEntry): string & Brand<"CodeEntryTicket">;
        issueLastResortCodeEntry(
            issued: IssuedLastResortCodeEntry,
        ): string & Brand<"LastResortCodeEntryTicket">;
        issueRecoveryAction(
            action: PcdActionCandidate,
        ): string & Brand<"RecoveryActionTicket">;
        issueSearch(issued: IssuedSearch): string & Brand<"SearchTicket">;
        readLastResortEntrypointHandOff(): | {
            aac: string;
            entrypointServerParams: { readonly [key: string]: unknown };
        }
        | undefined;
        resolveCodeEntry(
            ticket: string & Brand<"CodeEntryTicket">,
        ): IssuedCodeEntry | undefined;
        resolveLastResortCodeEntry(
            ticket: string & Brand<"LastResortCodeEntryTicket">,
        ): IssuedLastResortCodeEntry | undefined;
        resolveRecoveryAction(
            ticket: string & Brand<"RecoveryActionTicket">,
        ): PcdActionCandidate | undefined;
        resolveSearch(
            ticket: string & Brand<"SearchTicket">,
        ): IssuedSearch | undefined;
    }
    Index

    Methods

    • Internal

      Forgets the escalation after a successful login: it has served its purpose, and the argument-less escalation edge must have nothing stale to reopen.

      Returns void

    • Internal

      Stores what the login answer issued for the last-resort-recovery entrypoint call. The escalation edge takes no argument: the code-entry screen reads this client state, which a checkpoint carries across a process restart.

      Parameters

      • issued: { aac: string; entrypointServerParams: { readonly [key: string]: unknown } }

      Returns void

    • Internal

      Parameters

      • issued: IssuedCodeEntry

      Returns string & Brand<"CodeEntryTicket">

    • Internal

      Parameters

      • issued: IssuedLastResortCodeEntry

      Returns string & Brand<"LastResortCodeEntryTicket">

    • Internal

      Parameters

      Returns string & Brand<"RecoveryActionTicket">

    • Internal

      Parameters

      • issued: IssuedSearch

      Returns string & Brand<"SearchTicket">

    • Internal

      The escalation the latest login answer issued, if one did.

      Returns
          | {
              aac: string;
              entrypointServerParams: { readonly [key: string]: unknown };
          }
          | undefined

    • Internal

      Parameters

      • ticket: string & Brand<"CodeEntryTicket">

      Returns IssuedCodeEntry | undefined

    • Internal

      Parameters

      • ticket: string & Brand<"LastResortCodeEntryTicket">

      Returns IssuedLastResortCodeEntry | undefined

    • Internal

      Parameters

      • ticket: string & Brand<"RecoveryActionTicket">

      Returns PcdActionCandidate | undefined

    • Internal

      Parameters

      • ticket: string & Brand<"SearchTicket">

      Returns IssuedSearch | undefined