ReadonlyindexWhere every navigable position came from, from the extractor.
ReadonlyworksheetsLayer id → the worksheet that layer was built from.
ReadonlyguardShared re-entrancy flag.
ReadonlydisabledWorksheets, by name, whose selection has been permanently disabled by a rejection.
Keyed by name and not by layer id: a layer id is an index among the worksheets that survived one extraction, so a refresh that drops a worksheet re-points every id after it at a different worksheet, and a latch earned by one worksheet would silence another. A worksheet name is stable across refreshes — it is already how SelectionBridge.worksheets is rebuilt.
ReadonlyownedWorksheets, by name, whose selection MAIDR currently holds.
Shared across refreshes like SelectionBridge.disabled. A worksheet joins when a navigation selects marks in it and leaves when MAIDR clears it or a user's own click replaces the selection. It is what lets focus leaving the figure clear only what MAIDR put there: a colleague's click on a mark takes the focus with it, and clearing that selection because focus left would undo the very click the reader is about to follow.
ReadonlyissuedThe selections and clears this bridge issued most recently, so their echoes can be told from a user's own clicks. See handleMarkSelection; bounded by MAX_ISSUED_SELECTIONS.
Everything applySelection needs, gathered once at bind time.