@jbrowse/plugin-linear-genome-view 5.0.0-beta.2 → 5.0.0-beta.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/esm/LinearGenomeView/afterAttach.d.ts +22 -5
  2. package/esm/LinearGenomeView/afterAttach.js +129 -106
  3. package/esm/LinearGenomeView/axisConfigSchema.d.ts +18 -0
  4. package/esm/LinearGenomeView/axisConfigSchema.js +22 -0
  5. package/esm/LinearGenomeView/components/CenterLine.js +10 -5
  6. package/esm/LinearGenomeView/components/ConnectedHoverHighlight.js +2 -3
  7. package/esm/LinearGenomeView/components/CrisprGuidePanel.js +3 -5
  8. package/esm/LinearGenomeView/components/ExportSvgDialog.d.ts +9 -4
  9. package/esm/LinearGenomeView/components/ExportSvgDialog.js +45 -8
  10. package/esm/LinearGenomeView/components/GetSequenceDialog.js +2 -2
  11. package/esm/LinearGenomeView/components/Header.js +11 -1
  12. package/esm/LinearGenomeView/components/HeaderClearHighlightButton.js +2 -2
  13. package/esm/LinearGenomeView/components/HeaderPanControls.d.ts +3 -3
  14. package/esm/LinearGenomeView/components/HeaderPanControls.js +6 -3
  15. package/esm/LinearGenomeView/components/HeaderSearchBoxes.js +4 -1
  16. package/esm/LinearGenomeView/components/HeaderZoomControls.js +6 -35
  17. package/esm/LinearGenomeView/components/Highlight.js +27 -11
  18. package/esm/LinearGenomeView/components/HighlightBand.d.ts +11 -2
  19. package/esm/LinearGenomeView/components/HighlightBand.js +32 -13
  20. package/esm/LinearGenomeView/components/HighlightChip.d.ts +3 -3
  21. package/esm/LinearGenomeView/components/HighlightChip.js +13 -8
  22. package/esm/LinearGenomeView/components/HighlightLabelDialog.d.ts +6 -0
  23. package/esm/LinearGenomeView/components/HighlightLabelDialog.js +18 -0
  24. package/esm/LinearGenomeView/components/HoverPositionHighlight.js +3 -3
  25. package/esm/LinearGenomeView/components/ImportForm.js +7 -9
  26. package/esm/LinearGenomeView/components/LinearGenomeView.js +5 -12
  27. package/esm/LinearGenomeView/components/LinearGenomeViewContainer.js +13 -14
  28. package/esm/LinearGenomeView/components/MiniControls.js +11 -5
  29. package/esm/LinearGenomeView/components/OverviewHighlight.js +3 -3
  30. package/esm/LinearGenomeView/components/OverviewHighlightBand.d.ts +3 -2
  31. package/esm/LinearGenomeView/components/OverviewHighlightBand.js +6 -5
  32. package/esm/LinearGenomeView/components/OverviewRubberband.js +25 -48
  33. package/esm/LinearGenomeView/components/OverviewScalebar.js +4 -5
  34. package/esm/LinearGenomeView/components/OverviewScalebarPolygon.js +5 -3
  35. package/esm/LinearGenomeView/components/PaddingBlocks.js +3 -8
  36. package/esm/LinearGenomeView/components/RangeSelectOverlay.js +5 -6
  37. package/esm/LinearGenomeView/components/RegionWidthEditorDialog.d.ts +3 -2
  38. package/esm/LinearGenomeView/components/RegionWidthEditorDialog.js +4 -4
  39. package/esm/LinearGenomeView/components/ResizeAllTracksHandle.d.ts +5 -0
  40. package/esm/LinearGenomeView/components/ResizeAllTracksHandle.js +74 -0
  41. package/esm/LinearGenomeView/components/Rubberband.d.ts +1 -2
  42. package/esm/LinearGenomeView/components/Rubberband.js +3 -2
  43. package/esm/LinearGenomeView/components/SVGHighlightBand.d.ts +10 -1
  44. package/esm/LinearGenomeView/components/SVGHighlightBand.js +16 -5
  45. package/esm/LinearGenomeView/components/Scalebar.d.ts +2 -6
  46. package/esm/LinearGenomeView/components/Scalebar.js +8 -5
  47. package/esm/LinearGenomeView/components/ScalebarRefNameLabels.js +51 -36
  48. package/esm/LinearGenomeView/components/SearchBox.js +10 -16
  49. package/esm/LinearGenomeView/components/SearchPanelForm.d.ts +3 -2
  50. package/esm/LinearGenomeView/components/SearchPanelForm.js +4 -2
  51. package/esm/LinearGenomeView/components/SearchResultsDialog.d.ts +4 -8
  52. package/esm/LinearGenomeView/components/SearchResultsDialog.js +7 -4
  53. package/esm/LinearGenomeView/components/SearchResultsTable.d.ts +4 -7
  54. package/esm/LinearGenomeView/components/SearchResultsTable.js +25 -53
  55. package/esm/LinearGenomeView/components/SequenceFeatureHoverHighlight.js +2 -3
  56. package/esm/LinearGenomeView/components/SequenceSearchDialog.d.ts +2 -4
  57. package/esm/LinearGenomeView/components/StrandCheckboxes.d.ts +3 -2
  58. package/esm/LinearGenomeView/components/StrandCheckboxes.js +4 -2
  59. package/esm/LinearGenomeView/components/TrackContainer.d.ts +2 -3
  60. package/esm/LinearGenomeView/components/TrackContainer.js +63 -10
  61. package/esm/LinearGenomeView/components/TrackLabel.js +14 -4
  62. package/esm/LinearGenomeView/components/TrackLabelButtons.js +2 -2
  63. package/esm/LinearGenomeView/components/TrackLabelDragHandle.js +4 -5
  64. package/esm/LinearGenomeView/components/TrackLabelMenu.js +11 -14
  65. package/esm/LinearGenomeView/components/TrackLabelRefNameWarning.d.ts +3 -4
  66. package/esm/LinearGenomeView/components/TrackLabelRefNameWarning.js +23 -10
  67. package/esm/LinearGenomeView/components/TrackRenderingContainer.d.ts +6 -4
  68. package/esm/LinearGenomeView/components/TrackRenderingContainer.js +12 -24
  69. package/esm/LinearGenomeView/components/TracksContainer.js +11 -23
  70. package/esm/LinearGenomeView/components/VerticalGuide.d.ts +1 -2
  71. package/esm/LinearGenomeView/components/VerticalGuide.js +3 -16
  72. package/esm/LinearGenomeView/components/fetchSequence.d.ts +1 -2
  73. package/esm/LinearGenomeView/components/fetchSequence.js +15 -7
  74. package/esm/LinearGenomeView/components/recentLocationsMenu.js +10 -0
  75. package/esm/LinearGenomeView/components/useRangeSelect.d.ts +0 -3
  76. package/esm/LinearGenomeView/components/useRangeSelect.js +26 -61
  77. package/esm/LinearGenomeView/components/useSearchBoxPrefs.d.ts +3 -1
  78. package/esm/LinearGenomeView/components/useSearchBoxPrefs.js +4 -2
  79. package/esm/LinearGenomeView/components/useSideScroll.d.ts +17 -2
  80. package/esm/LinearGenomeView/components/useSideScroll.js +156 -102
  81. package/esm/LinearGenomeView/components/util.d.ts +4 -0
  82. package/esm/LinearGenomeView/components/util.js +4 -2
  83. package/esm/LinearGenomeView/consts.d.ts +2 -0
  84. package/esm/LinearGenomeView/consts.js +3 -1
  85. package/esm/LinearGenomeView/containingLgv.d.ts +21 -0
  86. package/esm/LinearGenomeView/containingLgv.js +23 -0
  87. package/esm/LinearGenomeView/headerFit.d.ts +4 -2
  88. package/esm/LinearGenomeView/headerFit.js +20 -7
  89. package/esm/LinearGenomeView/index.d.ts +2 -7
  90. package/esm/LinearGenomeView/index.js +5 -7
  91. package/esm/LinearGenomeView/keyboardHandler.d.ts +8 -7
  92. package/esm/LinearGenomeView/keyboardHandler.js +61 -23
  93. package/esm/LinearGenomeView/launchKeys.d.ts +1 -1
  94. package/esm/LinearGenomeView/launchKeys.js +11 -6
  95. package/esm/LinearGenomeView/lazyDialogs.d.ts +16 -3
  96. package/esm/LinearGenomeView/lazyDialogs.js +1 -0
  97. package/esm/LinearGenomeView/linkedViewSync.d.ts +3 -11
  98. package/esm/LinearGenomeView/linkedViewSync.js +27 -49
  99. package/esm/LinearGenomeView/menuItems.d.ts +16 -18
  100. package/esm/LinearGenomeView/menuItems.js +264 -164
  101. package/esm/LinearGenomeView/model.d.ts +1192 -560
  102. package/esm/LinearGenomeView/model.js +805 -590
  103. package/esm/LinearGenomeView/rExport/exportLinearView.d.ts +17 -0
  104. package/esm/LinearGenomeView/rExport/exportLinearView.js +117 -0
  105. package/esm/LinearGenomeView/rExport/rScript.d.ts +110 -0
  106. package/esm/LinearGenomeView/rExport/rScript.js +524 -0
  107. package/esm/LinearGenomeView/sharedScaleContainer.d.ts +1 -1
  108. package/esm/LinearGenomeView/sharedScaleContainer.js +2 -12
  109. package/esm/LinearGenomeView/showFiles.d.ts +2 -0
  110. package/esm/LinearGenomeView/showFiles.js +19 -0
  111. package/esm/LinearGenomeView/showRegionsWithUndo.d.ts +1 -1
  112. package/esm/LinearGenomeView/showRegionsWithUndo.js +13 -5
  113. package/esm/LinearGenomeView/stickyChrome.d.ts +5 -9
  114. package/esm/LinearGenomeView/stickyChrome.js +5 -9
  115. package/esm/LinearGenomeView/svgcomponents/SVGGridlines.js +4 -4
  116. package/esm/LinearGenomeView/svgcomponents/SVGHeader.d.ts +4 -1
  117. package/esm/LinearGenomeView/svgcomponents/SVGHeader.js +8 -21
  118. package/esm/LinearGenomeView/svgcomponents/SVGHighlights.d.ts +3 -1
  119. package/esm/LinearGenomeView/svgcomponents/SVGHighlights.js +9 -9
  120. package/esm/LinearGenomeView/svgcomponents/SVGHighlightsOverlay.d.ts +3 -1
  121. package/esm/LinearGenomeView/svgcomponents/SVGHighlightsOverlay.js +5 -5
  122. package/esm/LinearGenomeView/svgcomponents/SVGLinearGenomeView.js +13 -18
  123. package/esm/LinearGenomeView/svgcomponents/SVGRegionSeparators.js +2 -5
  124. package/esm/LinearGenomeView/svgcomponents/SVGRowHeader.js +5 -6
  125. package/esm/LinearGenomeView/svgcomponents/SVGRuler.js +9 -10
  126. package/esm/LinearGenomeView/svgcomponents/SVGScalebar.js +3 -3
  127. package/esm/LinearGenomeView/svgcomponents/SVGStackedRow.d.ts +26 -0
  128. package/esm/LinearGenomeView/svgcomponents/SVGStackedRow.js +12 -0
  129. package/esm/LinearGenomeView/svgcomponents/SVGTrackLabel.js +21 -13
  130. package/esm/LinearGenomeView/svgcomponents/SVGTracks.d.ts +4 -5
  131. package/esm/LinearGenomeView/svgcomponents/SVGTracks.js +7 -6
  132. package/esm/LinearGenomeView/svgcomponents/SVGView.d.ts +2 -3
  133. package/esm/LinearGenomeView/svgcomponents/SVGView.js +17 -3
  134. package/esm/LinearGenomeView/svgcomponents/renderViewTracks.d.ts +24 -20
  135. package/esm/LinearGenomeView/svgcomponents/renderViewTracks.js +42 -29
  136. package/esm/LinearGenomeView/svgcomponents/useViewSvgFigure.js +74 -77
  137. package/esm/LinearGenomeView/svgcomponents/util.d.ts +28 -12
  138. package/esm/LinearGenomeView/svgcomponents/util.js +41 -29
  139. package/esm/LinearGenomeView/types.d.ts +13 -10
  140. package/esm/LinearGenomeView/types.js +0 -1
  141. package/esm/LinearGenomeView/util.d.ts +103 -46
  142. package/esm/LinearGenomeView/util.js +222 -170
  143. package/esm/MultiLevelRubberband/MultiLevelRubberband.js +9 -6
  144. package/esm/MultiLevelRubberband/index.d.ts +2 -0
  145. package/esm/MultiLevelRubberband/index.js +2 -0
  146. package/esm/MultiLevelRubberband/menuItems.d.ts +34 -0
  147. package/esm/MultiLevelRubberband/menuItems.js +52 -0
  148. package/esm/MultiLevelRubberband/rowLabel.d.ts +22 -0
  149. package/esm/MultiLevelRubberband/rowLabel.js +27 -0
  150. package/esm/MultiLevelRubberband/types.d.ts +1 -0
  151. package/esm/MultiLevelRubberband/useRangeSelect.d.ts +2 -1
  152. package/esm/MultiLevelRubberband/useRangeSelect.js +45 -59
  153. package/esm/TrackModifiers/index.d.ts +83 -0
  154. package/esm/TrackModifiers/index.js +231 -0
  155. package/esm/displayKitTests/perRegionTestEnv.d.ts +244 -68
  156. package/esm/displayKitTests/perRegionTestEnv.js +30 -26
  157. package/esm/index.d.ts +21 -99
  158. package/esm/index.js +17 -38
  159. package/esm/searchUtils.d.ts +26 -10
  160. package/esm/searchUtils.js +137 -137
  161. package/esm/shared/RubberbandSpan.d.ts +3 -2
  162. package/esm/shared/RubberbandSpan.js +6 -3
  163. package/esm/shared/coordLabels.d.ts +11 -4
  164. package/esm/shared/coordLabels.js +20 -5
  165. package/esm/shared/useWindowDrag.d.ts +18 -0
  166. package/esm/shared/useWindowDrag.js +47 -0
  167. package/package.json +12 -11
  168. package/esm/FeatureTrack/configSchema.d.ts +0 -124
  169. package/esm/FeatureTrack/configSchema.js +0 -54
  170. package/esm/FeatureTrack/index.d.ts +0 -2
  171. package/esm/FeatureTrack/index.js +0 -13
  172. package/esm/LinearGenomeView/initKeys.d.ts +0 -12
  173. package/esm/LinearGenomeView/initKeys.js +0 -68
  174. package/esm/MultiLevelRubberband/VerticalGuide.d.ts +0 -6
  175. package/esm/MultiLevelRubberband/VerticalGuide.js +0 -21
  176. package/esm/lazyPluginExports.d.ts +0 -23
  177. package/esm/lazyPluginExports.js +0 -36
@@ -31,8 +31,13 @@ export interface PerRegionTestControl {
31
31
  */
32
32
  estimateBytes: number;
33
33
  estimateCalls: number;
34
- /** the display's own density verdict, canvas's second too-large axis */
34
+ /** the display's own density verdict, the feature display's second too-large axis */
35
35
  densityTooLarge: boolean;
36
+ /**
37
+ * What the next fetch stores, so a test can tell the payload a refetch
38
+ * replaced from the one that replaced it.
39
+ */
40
+ payloadTag: string;
36
41
  }
37
42
  /**
38
43
  * The smallest possible display on `MultiRegionDisplayMixin`: it fetches, it
@@ -40,7 +45,7 @@ export interface PerRegionTestControl {
40
45
  * displays compose this foundation, and every one of them adds a plugin's worth
41
46
  * of behavior on top — so a test that boots one is testing that plugin as much
42
47
  * as the foundation, which is how the foundation's own autoruns came to be
43
- * pinned only by canvas's suite.
48
+ * pinned only by the feature display's suite.
44
49
  */
45
50
  /** Which of the gate's opt-in hooks this display overrides. */
46
51
  export interface GateOptIns {
@@ -240,6 +245,8 @@ declare function makeStateModel(control: PerRegionTestControl, gate: GateOptIns,
240
245
  }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
241
246
  };
242
247
  trackMenuItems(): import("@jbrowse/core/ui").MenuItem[];
248
+ configProblemsOf(conf: import("@jbrowse/core/configuration").AnyConfigurationModel): string[];
249
+ readonly liveNotices: string[];
243
250
  } & {
244
251
  setStatusMessage(status?: import("@jbrowse/core/util").RpcStatus): void;
245
252
  setError(error?: unknown): void;
@@ -249,20 +256,44 @@ declare function makeStateModel(control: PerRegionTestControl, gate: GateOptIns,
249
256
  allowSetters?: boolean;
250
257
  }): {
251
258
  applied: string[];
252
- unapplied: string[];
259
+ unapplied: import("@jbrowse/core/util/unknownSnapshotKeys").UnappliedSetting[];
253
260
  failed: {
254
261
  key: string;
255
262
  error: string;
256
263
  }[];
257
264
  };
265
+ } & {
266
+ readonly plotKeys: string[];
267
+ readonly plot: import("@jbrowse/core/configuration").Plot;
268
+ readonly configNotices: string[];
269
+ } & {
270
+ readonly notices: string[];
271
+ } & {
272
+ readonly cornerNotices: string[];
273
+ readonly plotExamples: readonly import("@jbrowse/core/configuration").PlotExample[];
274
+ readonly configDocsUrl: string;
275
+ liftPlot(draft: import("@jbrowse/core/configuration").Plot, options?: import("@jbrowse/core/configuration").PlotWriteOptions): import("@jbrowse/core/configuration").AnyConfigurationModel;
276
+ plotProblems(draft: import("@jbrowse/core/configuration").Plot, options?: import("@jbrowse/core/configuration").PlotWriteOptions): string[];
277
+ plotWrites(draft: import("@jbrowse/core/configuration").Plot, options?: import("@jbrowse/core/configuration").PlotWriteOptions): Record<string, unknown>;
278
+ } & {
279
+ applyPlot(draft: import("@jbrowse/core/configuration").Plot, options?: import("@jbrowse/core/configuration").PlotWriteOptions): void;
258
280
  } & {
259
281
  scrollTop: number;
282
+ hostHeight: number | undefined;
283
+ } & {
284
+ readonly configuredHeight: number;
285
+ } & {
286
+ readonly allottedHeight: number;
260
287
  } & {
261
288
  readonly height: number;
262
289
  readonly resizing: boolean;
290
+ readonly scrollContentHeight: number;
291
+ readonly scrollViewportHeight: number;
292
+ } & {
263
293
  readonly scrollableHeight: number;
264
294
  } & {
265
295
  setScrollTop(scrollTop: number): void;
296
+ setHostHeight(height: number | undefined): void;
266
297
  setHeight(displayHeight: number): number;
267
298
  resizeHeight(distance: number): number;
268
299
  } & {
@@ -271,18 +302,18 @@ declare function makeStateModel(control: PerRegionTestControl, gate: GateOptIns,
271
302
  } & {
272
303
  forceLoadTrack: boolean;
273
304
  byteEstimate: import("@jbrowse/display-kit/regionTooLargeUtils").ByteEstimate | undefined;
274
- gateMeasuredViewportKey: string | undefined;
305
+ gateMeasuredViewportKey: unknown;
275
306
  } & {
276
307
  readonly gateEnabled: boolean;
277
308
  readonly byteGateAdapterConfig: Record<string, unknown>;
278
309
  readonly configuredFetchSizeLimit: number | undefined;
279
310
  readonly densityTooLarge: boolean;
280
- readonly byteGateAdapterPath: string[];
311
+ readonly byteGateAdapterPath: import("@jbrowse/display-kit/RegionTooLargeMixin").ByteGateAdapterPath;
281
312
  readonly adapterFetchSizeLimit: number | undefined;
282
313
  readonly configForceLoad: boolean;
314
+ readonly gateViewportSpanBp: number | undefined;
283
315
  readonly gateViewport: import("@jbrowse/display-kit/regionTooLargeUtils").GateViewport | undefined;
284
316
  } & {
285
- readonly byteGateAdapterKey: string;
286
317
  readonly aboveForceLoadFloor: boolean;
287
318
  readonly gateExempt: boolean;
288
319
  readonly estimatedFetchBytes: number | undefined;
@@ -304,6 +335,7 @@ declare function makeStateModel(control: PerRegionTestControl, gate: GateOptIns,
304
335
  readonly gateSkipsMeasuredViewport: boolean;
305
336
  } & {
306
337
  clearByteEstimate(): void;
338
+ clearGateMeasurements(): void;
307
339
  setForceLoadTrack(flag: boolean): void;
308
340
  } & {
309
341
  commitFetchBytes(perRegionBytes: (number | undefined)[], issued: import("@jbrowse/display-kit/regionTooLargeUtils").GateFetchState, partial?: boolean): void;
@@ -313,14 +345,17 @@ declare function makeStateModel(control: PerRegionTestControl, gate: GateOptIns,
313
345
  afterAttach(): void;
314
346
  } & {
315
347
  canvasDrawn: boolean;
348
+ paintCount: number;
316
349
  currentRenderingBackend: unknown;
317
350
  renderTick: number;
318
351
  autorunsInstalled: boolean;
319
352
  renderError: unknown;
353
+ offScreen: boolean;
320
354
  } & {
321
355
  readonly canRender: boolean;
322
356
  readonly rendersCanvas: boolean;
323
357
  readonly paintInert: boolean;
358
+ readonly paintSuperseded: boolean;
324
359
  } & {
325
360
  readonly painted: boolean;
326
361
  } & {
@@ -328,11 +363,12 @@ declare function makeStateModel(control: PerRegionTestControl, gate: GateOptIns,
328
363
  resetCanvasDrawn(): void;
329
364
  stopRenderingBackend(): void;
330
365
  renderNow(): void;
366
+ setOffScreen(offScreen: boolean): void;
331
367
  setRenderError(error: unknown): void;
332
368
  } & {
333
369
  attachRenderingBackend<B>(backend: B, setup: () => import("@jbrowse/render-core/RenderLifecycleMixin").RenderingBackendCallbacks<B>): void;
334
370
  } & {
335
- activeStopToken: import("@jbrowse/core/util").StopToken | undefined;
371
+ activeSignal: AbortSignal | undefined;
336
372
  fetchGeneration: number;
337
373
  reloadCounter: number;
338
374
  statusWindow: import("@jbrowse/core/util").StatusWindow;
@@ -353,7 +389,8 @@ declare function makeStateModel(control: PerRegionTestControl, gate: GateOptIns,
353
389
  readonly fetchInert: boolean;
354
390
  readonly awaitingPrerequisite: boolean;
355
391
  readonly awaitingDependentData: boolean;
356
- readonly rpcPropsCacheKey: string;
392
+ } & {
393
+ readonly settingsFetchInputs: unknown;
357
394
  } & {
358
395
  setError(error?: unknown): void;
359
396
  setStatusMessage(status?: import("@jbrowse/core/util").RpcStatus): void;
@@ -365,7 +402,7 @@ declare function makeStateModel(control: PerRegionTestControl, gate: GateOptIns,
365
402
  cancelFetchByUser(): void;
366
403
  reload(): void;
367
404
  beforeDestroy(): void;
368
- beginFetch(stopToken: import("@jbrowse/core/util").StopToken): void;
405
+ beginFetch(signal: AbortSignal): void;
369
406
  endFetch(current: boolean): void;
370
407
  } & {
371
408
  runFetch: (work: (ctx: import("@jbrowse/display-kit/FetchMixin").FetchContext) => Promise<void>) => Promise<void>;
@@ -374,31 +411,44 @@ declare function makeStateModel(control: PerRegionTestControl, gate: GateOptIns,
374
411
  } & {
375
412
  readonly host: import("@jbrowse/display-kit/regionHost").RegionHost;
376
413
  readonly canvasWidthPx: number;
414
+ readonly settledSubPixelBinBp: number;
377
415
  readonly canRender: boolean;
378
416
  readonly rendersCanvas: boolean;
417
+ readonly trackVisibleRegions: import("@jbrowse/display-kit/regionHost").VisibleRegion[];
379
418
  readonly viewportWithinLoadedData: boolean;
380
419
  readonly viewportEmpty: boolean;
381
420
  readonly fetchSuspended: boolean;
382
421
  readonly layoutReady: boolean;
383
- readonly regionFetchKey: string;
384
- regionHasData(_displayedRegionIndex: number): boolean;
422
+ regionHasData(displayedRegionIndex: number): boolean;
385
423
  readonly dataSuperseded: boolean;
386
424
  readonly renderBlocks: import("@jbrowse/render-core/renderBlock").RenderBlock[];
425
+ } & {
426
+ readonly fetchInputs: import("@jbrowse/display-kit/fetchInputs").FetchInputs;
427
+ } & {
428
+ readonly regionPayloads: ReadonlyMap<number, unknown>;
429
+ readonly hasRegionData: boolean;
387
430
  } & {
388
431
  isCacheValid(displayedRegionIndex: number): boolean;
389
432
  } & {
433
+ readonly staleSettingsDrawn: boolean;
390
434
  readonly dataCurrent: boolean;
391
435
  readonly loadedAssembly: import("@jbrowse/core/assemblyManager/assembly").Assembly | undefined;
436
+ } & {
437
+ readonly phaseViewportCurrent: boolean;
392
438
  } & {
393
439
  readonly svgReady: boolean;
394
440
  readonly paintInert: boolean;
441
+ readonly paintSuperseded: boolean;
395
442
  readonly displayPhase: import("@jbrowse/render-core/displayPhase").DisplayPhase;
396
443
  } & {
397
- setLoadedRegion(displayedRegionIndex: number, region: import("@jbrowse/core/util").Region, fetchKey?: string): void;
444
+ setLoadedRegion(displayedRegionIndex: number, region: import("@jbrowse/core/util").Region, payload: import("@jbrowse/display-kit/regionCommit").RegionPayload | undefined, fetchInputs?: import("@jbrowse/display-kit/fetchInputs").FetchInputs): void;
445
+ evictRegionStore(keep: ReadonlySet<number>): void;
398
446
  dropLoadedRegion(displayedRegionIndex: number): void;
399
447
  clearDisplaySpecificData(): void;
448
+ clearSettingsBakedData(): void;
400
449
  } & {
401
450
  clearAllRpcData(): void;
451
+ invalidateSettings(): void;
402
452
  reload(): void;
403
453
  } & {
404
454
  fetchNeeded(_needed: IndexedRegion[]): void;
@@ -409,23 +459,25 @@ declare function makeStateModel(control: PerRegionTestControl, gate: GateOptIns,
409
459
  } & {
410
460
  /** every `fetchNeeded` call, as the region list it was handed */
411
461
  fetchLog: IndexedRegion[][];
412
- loadedData: Map<number, string>;
413
462
  /**
414
- * What `regionFetchKey` answers. A volatile, not a `control` knob, and
415
- * that is the point: a real display's key reads view state, so the
416
- * autorun re-runs when it moves. A plain closure value would be memoized
417
- * by the computed and never invalidate.
463
+ * What `zoomFetchArgs` answers. A volatile, not a `control` knob, and
464
+ * that is the point: a real display's args read view state, so the
465
+ * autorun re-runs when they move. A plain closure value would be
466
+ * memoized by the computed and never invalidate.
418
467
  */
419
468
  fetchKey: string;
420
469
  } & {
470
+ regionHasData(displayedRegionIndex: number): boolean;
471
+ } & {
472
+ /** the fetched payloads, off the foundation's store */
473
+ readonly loadedData: ReadonlyMap<number, string>;
421
474
  readonly gateEnabled: boolean;
422
475
  readonly densityTooLarge: boolean;
423
- readonly regionFetchKey: string;
424
- regionHasData(_displayedRegionIndex: number): boolean;
476
+ zoomFetchArgs(): {
477
+ key: string;
478
+ };
425
479
  } & {
426
480
  setFetchKey(key: string): void;
427
- setLoaded(displayedRegionIndex: number, value: string): void;
428
- clearDisplaySpecificData(): void;
429
481
  } & {
430
482
  fetchNeeded(needed: IndexedRegion[]): Promise<void>;
431
483
  }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>;
@@ -448,22 +500,22 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
448
500
  */
449
501
  estimateBytes?: number;
450
502
  }): {
451
- createDisplay: ({ displayedRegions, displaySnapshot, skipWidth, regionsInSnapshot, }?: {
503
+ createDisplay: (args_0?: {
452
504
  displayedRegions?: import("@jbrowse/core/util").Region[];
453
505
  displaySnapshot?: Record<string, unknown>;
454
506
  skipWidth?: boolean;
455
507
  regionsInSnapshot?: boolean;
456
- }) => {
508
+ } | undefined) => {
457
509
  session: import("@jbrowse/mobx-state-tree").ModelInstanceTypeProps<{
458
510
  name: import("@jbrowse/mobx-state-tree").IType<string | undefined, string, string>;
459
511
  view: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").IAnyModelType>;
460
512
  configuration: import("@jbrowse/mobx-state-tree").IMapType<import("@jbrowse/mobx-state-tree").IType<any, any, any>>;
461
- displayTypeDefaults: import("@jbrowse/mobx-state-tree").IType<Record<string, Record<string, unknown>> | null | undefined, Record<string, Record<string, unknown>>, Record<string, Record<string, unknown>>>;
462
513
  }> & {
463
514
  rpcManager: unknown;
464
515
  assemblyManager: unknown;
465
516
  theme: import("@mui/material").Theme;
466
517
  palette: import("@jbrowse/core/ui/palette").JBrowsePalette;
518
+ animationMode: import("@jbrowse/core/util").AnimationMode;
467
519
  queuedDialogs: import("@jbrowse/display-test-utils").QueuedDialog[];
468
520
  selection: unknown;
469
521
  notifications: {
@@ -471,26 +523,41 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
471
523
  level?: string;
472
524
  actions: import("@jbrowse/core/util").SnackAction[];
473
525
  }[];
526
+ widgets: Map<string, unknown>;
527
+ openedWidgets: Record<string, unknown>[];
474
528
  } & {
475
529
  getTrackById: (id: string) => unknown;
476
- getDisplayTypeDefault(displayType: string, slot: string): unknown;
530
+ baseTrackConfig: (id: string) => {
531
+ trackId: string;
532
+ [key: string]: unknown;
533
+ } | undefined;
477
534
  } & {
478
535
  setView(view: any): any;
479
536
  notify(message: string, level?: string, action?: import("@jbrowse/core/util").SnackAction | import("@jbrowse/core/util").SnackAction[]): void;
480
537
  notifyError(message: string): void;
481
538
  queueDialog(cb: (handleClose: () => void) => import("@jbrowse/display-test-utils").QueuedDialog): void;
482
539
  setSelection(thing: unknown): void;
483
- setDisplayTypeDefault(displayType: string, slot: string, value: unknown): void;
540
+ clearSelection(): void;
541
+ addWidget(type: string, id: string, initialState?: Record<string, unknown>): {
542
+ type: string;
543
+ id: string;
544
+ };
545
+ showWidget(_widget: unknown): void;
546
+ } & {
547
+ openWidget(type: string, id: string, initialState?: Record<string, unknown>): {
548
+ type: string;
549
+ id: string;
550
+ };
484
551
  } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
485
552
  name: import("@jbrowse/mobx-state-tree").IType<string | undefined, string, string>;
486
553
  view: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").IAnyModelType>;
487
554
  configuration: import("@jbrowse/mobx-state-tree").IMapType<import("@jbrowse/mobx-state-tree").IType<any, any, any>>;
488
- displayTypeDefaults: import("@jbrowse/mobx-state-tree").IType<Record<string, Record<string, unknown>> | null | undefined, Record<string, Record<string, unknown>>, Record<string, Record<string, unknown>>>;
489
555
  }, {
490
556
  rpcManager: unknown;
491
557
  assemblyManager: unknown;
492
558
  theme: import("@mui/material").Theme;
493
559
  palette: import("@jbrowse/core/ui/palette").JBrowsePalette;
560
+ animationMode: import("@jbrowse/core/util").AnimationMode;
494
561
  queuedDialogs: import("@jbrowse/display-test-utils").QueuedDialog[];
495
562
  selection: unknown;
496
563
  notifications: {
@@ -498,16 +565,31 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
498
565
  level?: string;
499
566
  actions: import("@jbrowse/core/util").SnackAction[];
500
567
  }[];
568
+ widgets: Map<string, unknown>;
569
+ openedWidgets: Record<string, unknown>[];
501
570
  } & {
502
571
  getTrackById: (id: string) => unknown;
503
- getDisplayTypeDefault(displayType: string, slot: string): unknown;
572
+ baseTrackConfig: (id: string) => {
573
+ trackId: string;
574
+ [key: string]: unknown;
575
+ } | undefined;
504
576
  } & {
505
577
  setView(view: any): any;
506
578
  notify(message: string, level?: string, action?: import("@jbrowse/core/util").SnackAction | import("@jbrowse/core/util").SnackAction[]): void;
507
579
  notifyError(message: string): void;
508
580
  queueDialog(cb: (handleClose: () => void) => import("@jbrowse/display-test-utils").QueuedDialog): void;
509
581
  setSelection(thing: unknown): void;
510
- setDisplayTypeDefault(displayType: string, slot: string, value: unknown): void;
582
+ clearSelection(): void;
583
+ addWidget(type: string, id: string, initialState?: Record<string, unknown>): {
584
+ type: string;
585
+ id: string;
586
+ };
587
+ showWidget(_widget: unknown): void;
588
+ } & {
589
+ openWidget(type: string, id: string, initialState?: Record<string, unknown>): {
590
+ type: string;
591
+ id: string;
592
+ };
511
593
  }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
512
594
  view: any;
513
595
  track: any;
@@ -705,6 +787,8 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
705
787
  }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
706
788
  };
707
789
  trackMenuItems(): import("@jbrowse/core/ui").MenuItem[];
790
+ configProblemsOf(conf: import("@jbrowse/core/configuration").AnyConfigurationModel): string[];
791
+ readonly liveNotices: string[];
708
792
  } & {
709
793
  setStatusMessage(status?: import("@jbrowse/core/util").RpcStatus): void;
710
794
  setError(error?: unknown): void;
@@ -714,20 +798,44 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
714
798
  allowSetters?: boolean;
715
799
  }): {
716
800
  applied: string[];
717
- unapplied: string[];
801
+ unapplied: import("@jbrowse/core/util/unknownSnapshotKeys").UnappliedSetting[];
718
802
  failed: {
719
803
  key: string;
720
804
  error: string;
721
805
  }[];
722
806
  };
807
+ } & {
808
+ readonly plotKeys: string[];
809
+ readonly plot: import("@jbrowse/core/configuration").Plot;
810
+ readonly configNotices: string[];
811
+ } & {
812
+ readonly notices: string[];
813
+ } & {
814
+ readonly cornerNotices: string[];
815
+ readonly plotExamples: readonly import("@jbrowse/core/configuration").PlotExample[];
816
+ readonly configDocsUrl: string;
817
+ liftPlot(draft: import("@jbrowse/core/configuration").Plot, options?: import("@jbrowse/core/configuration").PlotWriteOptions): import("@jbrowse/core/configuration").AnyConfigurationModel;
818
+ plotProblems(draft: import("@jbrowse/core/configuration").Plot, options?: import("@jbrowse/core/configuration").PlotWriteOptions): string[];
819
+ plotWrites(draft: import("@jbrowse/core/configuration").Plot, options?: import("@jbrowse/core/configuration").PlotWriteOptions): Record<string, unknown>;
820
+ } & {
821
+ applyPlot(draft: import("@jbrowse/core/configuration").Plot, options?: import("@jbrowse/core/configuration").PlotWriteOptions): void;
723
822
  } & {
724
823
  scrollTop: number;
824
+ hostHeight: number | undefined;
825
+ } & {
826
+ readonly configuredHeight: number;
827
+ } & {
828
+ readonly allottedHeight: number;
725
829
  } & {
726
830
  readonly height: number;
727
831
  readonly resizing: boolean;
832
+ readonly scrollContentHeight: number;
833
+ readonly scrollViewportHeight: number;
834
+ } & {
728
835
  readonly scrollableHeight: number;
729
836
  } & {
730
837
  setScrollTop(scrollTop: number): void;
838
+ setHostHeight(height: number | undefined): void;
731
839
  setHeight(displayHeight: number): number;
732
840
  resizeHeight(distance: number): number;
733
841
  } & {
@@ -736,18 +844,18 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
736
844
  } & {
737
845
  forceLoadTrack: boolean;
738
846
  byteEstimate: import("@jbrowse/display-kit/regionTooLargeUtils").ByteEstimate | undefined;
739
- gateMeasuredViewportKey: string | undefined;
847
+ gateMeasuredViewportKey: unknown;
740
848
  } & {
741
849
  readonly gateEnabled: boolean;
742
850
  readonly byteGateAdapterConfig: Record<string, unknown>;
743
851
  readonly configuredFetchSizeLimit: number | undefined;
744
852
  readonly densityTooLarge: boolean;
745
- readonly byteGateAdapterPath: string[];
853
+ readonly byteGateAdapterPath: import("@jbrowse/display-kit/RegionTooLargeMixin").ByteGateAdapterPath;
746
854
  readonly adapterFetchSizeLimit: number | undefined;
747
855
  readonly configForceLoad: boolean;
856
+ readonly gateViewportSpanBp: number | undefined;
748
857
  readonly gateViewport: import("@jbrowse/display-kit/regionTooLargeUtils").GateViewport | undefined;
749
858
  } & {
750
- readonly byteGateAdapterKey: string;
751
859
  readonly aboveForceLoadFloor: boolean;
752
860
  readonly gateExempt: boolean;
753
861
  readonly estimatedFetchBytes: number | undefined;
@@ -769,6 +877,7 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
769
877
  readonly gateSkipsMeasuredViewport: boolean;
770
878
  } & {
771
879
  clearByteEstimate(): void;
880
+ clearGateMeasurements(): void;
772
881
  setForceLoadTrack(flag: boolean): void;
773
882
  } & {
774
883
  commitFetchBytes(perRegionBytes: (number | undefined)[], issued: import("@jbrowse/display-kit/regionTooLargeUtils").GateFetchState, partial?: boolean): void;
@@ -778,14 +887,17 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
778
887
  afterAttach(): void;
779
888
  } & {
780
889
  canvasDrawn: boolean;
890
+ paintCount: number;
781
891
  currentRenderingBackend: unknown;
782
892
  renderTick: number;
783
893
  autorunsInstalled: boolean;
784
894
  renderError: unknown;
895
+ offScreen: boolean;
785
896
  } & {
786
897
  readonly canRender: boolean;
787
898
  readonly rendersCanvas: boolean;
788
899
  readonly paintInert: boolean;
900
+ readonly paintSuperseded: boolean;
789
901
  } & {
790
902
  readonly painted: boolean;
791
903
  } & {
@@ -793,11 +905,12 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
793
905
  resetCanvasDrawn(): void;
794
906
  stopRenderingBackend(): void;
795
907
  renderNow(): void;
908
+ setOffScreen(offScreen: boolean): void;
796
909
  setRenderError(error: unknown): void;
797
910
  } & {
798
911
  attachRenderingBackend<B>(backend: B, setup: () => import("@jbrowse/render-core/RenderLifecycleMixin").RenderingBackendCallbacks<B>): void;
799
912
  } & {
800
- activeStopToken: import("@jbrowse/core/util").StopToken | undefined;
913
+ activeSignal: AbortSignal | undefined;
801
914
  fetchGeneration: number;
802
915
  reloadCounter: number;
803
916
  statusWindow: import("@jbrowse/core/util").StatusWindow;
@@ -818,7 +931,8 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
818
931
  readonly fetchInert: boolean;
819
932
  readonly awaitingPrerequisite: boolean;
820
933
  readonly awaitingDependentData: boolean;
821
- readonly rpcPropsCacheKey: string;
934
+ } & {
935
+ readonly settingsFetchInputs: unknown;
822
936
  } & {
823
937
  setError(error?: unknown): void;
824
938
  setStatusMessage(status?: import("@jbrowse/core/util").RpcStatus): void;
@@ -830,7 +944,7 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
830
944
  cancelFetchByUser(): void;
831
945
  reload(): void;
832
946
  beforeDestroy(): void;
833
- beginFetch(stopToken: import("@jbrowse/core/util").StopToken): void;
947
+ beginFetch(signal: AbortSignal): void;
834
948
  endFetch(current: boolean): void;
835
949
  } & {
836
950
  runFetch: (work: (ctx: import("@jbrowse/display-kit/FetchMixin").FetchContext) => Promise<void>) => Promise<void>;
@@ -839,31 +953,44 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
839
953
  } & {
840
954
  readonly host: import("@jbrowse/display-kit/regionHost").RegionHost;
841
955
  readonly canvasWidthPx: number;
956
+ readonly settledSubPixelBinBp: number;
842
957
  readonly canRender: boolean;
843
958
  readonly rendersCanvas: boolean;
959
+ readonly trackVisibleRegions: import("@jbrowse/display-kit/regionHost").VisibleRegion[];
844
960
  readonly viewportWithinLoadedData: boolean;
845
961
  readonly viewportEmpty: boolean;
846
962
  readonly fetchSuspended: boolean;
847
963
  readonly layoutReady: boolean;
848
- readonly regionFetchKey: string;
849
- regionHasData(_displayedRegionIndex: number): boolean;
964
+ regionHasData(displayedRegionIndex: number): boolean;
850
965
  readonly dataSuperseded: boolean;
851
966
  readonly renderBlocks: import("@jbrowse/render-core/renderBlock").RenderBlock[];
967
+ } & {
968
+ readonly fetchInputs: import("@jbrowse/display-kit/fetchInputs").FetchInputs;
969
+ } & {
970
+ readonly regionPayloads: ReadonlyMap<number, unknown>;
971
+ readonly hasRegionData: boolean;
852
972
  } & {
853
973
  isCacheValid(displayedRegionIndex: number): boolean;
854
974
  } & {
975
+ readonly staleSettingsDrawn: boolean;
855
976
  readonly dataCurrent: boolean;
856
977
  readonly loadedAssembly: import("@jbrowse/core/assemblyManager/assembly").Assembly | undefined;
978
+ } & {
979
+ readonly phaseViewportCurrent: boolean;
857
980
  } & {
858
981
  readonly svgReady: boolean;
859
982
  readonly paintInert: boolean;
983
+ readonly paintSuperseded: boolean;
860
984
  readonly displayPhase: import("@jbrowse/render-core/displayPhase").DisplayPhase;
861
985
  } & {
862
- setLoadedRegion(displayedRegionIndex: number, region: import("@jbrowse/core/util").Region, fetchKey?: string): void;
986
+ setLoadedRegion(displayedRegionIndex: number, region: import("@jbrowse/core/util").Region, payload: import("@jbrowse/display-kit/regionCommit").RegionPayload | undefined, fetchInputs?: import("@jbrowse/display-kit/fetchInputs").FetchInputs): void;
987
+ evictRegionStore(keep: ReadonlySet<number>): void;
863
988
  dropLoadedRegion(displayedRegionIndex: number): void;
864
989
  clearDisplaySpecificData(): void;
990
+ clearSettingsBakedData(): void;
865
991
  } & {
866
992
  clearAllRpcData(): void;
993
+ invalidateSettings(): void;
867
994
  reload(): void;
868
995
  } & {
869
996
  fetchNeeded(_needed: IndexedRegion[]): void;
@@ -874,23 +1001,25 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
874
1001
  } & {
875
1002
  /** every `fetchNeeded` call, as the region list it was handed */
876
1003
  fetchLog: IndexedRegion[][];
877
- loadedData: Map<number, string>;
878
1004
  /**
879
- * What `regionFetchKey` answers. A volatile, not a `control` knob, and
880
- * that is the point: a real display's key reads view state, so the
881
- * autorun re-runs when it moves. A plain closure value would be memoized
882
- * by the computed and never invalidate.
1005
+ * What `zoomFetchArgs` answers. A volatile, not a `control` knob, and
1006
+ * that is the point: a real display's args read view state, so the
1007
+ * autorun re-runs when they move. A plain closure value would be
1008
+ * memoized by the computed and never invalidate.
883
1009
  */
884
1010
  fetchKey: string;
885
1011
  } & {
1012
+ regionHasData(displayedRegionIndex: number): boolean;
1013
+ } & {
1014
+ /** the fetched payloads, off the foundation's store */
1015
+ readonly loadedData: ReadonlyMap<number, string>;
886
1016
  readonly gateEnabled: boolean;
887
1017
  readonly densityTooLarge: boolean;
888
- readonly regionFetchKey: string;
889
- regionHasData(_displayedRegionIndex: number): boolean;
1018
+ zoomFetchArgs(): {
1019
+ key: string;
1020
+ };
890
1021
  } & {
891
1022
  setFetchKey(key: string): void;
892
- setLoaded(displayedRegionIndex: number, value: string): void;
893
- clearDisplaySpecificData(): void;
894
1023
  } & {
895
1024
  fetchNeeded(needed: IndexedRegion[]): Promise<void>;
896
1025
  } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<Omit<Omit<Omit<{
@@ -1087,6 +1216,8 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
1087
1216
  }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
1088
1217
  };
1089
1218
  trackMenuItems(): import("@jbrowse/core/ui").MenuItem[];
1219
+ configProblemsOf(conf: import("@jbrowse/core/configuration").AnyConfigurationModel): string[];
1220
+ readonly liveNotices: string[];
1090
1221
  } & {
1091
1222
  setStatusMessage(status?: import("@jbrowse/core/util").RpcStatus): void;
1092
1223
  setError(error?: unknown): void;
@@ -1096,20 +1227,44 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
1096
1227
  allowSetters?: boolean;
1097
1228
  }): {
1098
1229
  applied: string[];
1099
- unapplied: string[];
1230
+ unapplied: import("@jbrowse/core/util/unknownSnapshotKeys").UnappliedSetting[];
1100
1231
  failed: {
1101
1232
  key: string;
1102
1233
  error: string;
1103
1234
  }[];
1104
1235
  };
1236
+ } & {
1237
+ readonly plotKeys: string[];
1238
+ readonly plot: import("@jbrowse/core/configuration").Plot;
1239
+ readonly configNotices: string[];
1240
+ } & {
1241
+ readonly notices: string[];
1242
+ } & {
1243
+ readonly cornerNotices: string[];
1244
+ readonly plotExamples: readonly import("@jbrowse/core/configuration").PlotExample[];
1245
+ readonly configDocsUrl: string;
1246
+ liftPlot(draft: import("@jbrowse/core/configuration").Plot, options?: import("@jbrowse/core/configuration").PlotWriteOptions): import("@jbrowse/core/configuration").AnyConfigurationModel;
1247
+ plotProblems(draft: import("@jbrowse/core/configuration").Plot, options?: import("@jbrowse/core/configuration").PlotWriteOptions): string[];
1248
+ plotWrites(draft: import("@jbrowse/core/configuration").Plot, options?: import("@jbrowse/core/configuration").PlotWriteOptions): Record<string, unknown>;
1249
+ } & {
1250
+ applyPlot(draft: import("@jbrowse/core/configuration").Plot, options?: import("@jbrowse/core/configuration").PlotWriteOptions): void;
1105
1251
  } & {
1106
1252
  scrollTop: number;
1253
+ hostHeight: number | undefined;
1254
+ } & {
1255
+ readonly configuredHeight: number;
1256
+ } & {
1257
+ readonly allottedHeight: number;
1107
1258
  } & {
1108
1259
  readonly height: number;
1109
1260
  readonly resizing: boolean;
1261
+ readonly scrollContentHeight: number;
1262
+ readonly scrollViewportHeight: number;
1263
+ } & {
1110
1264
  readonly scrollableHeight: number;
1111
1265
  } & {
1112
1266
  setScrollTop(scrollTop: number): void;
1267
+ setHostHeight(height: number | undefined): void;
1113
1268
  setHeight(displayHeight: number): number;
1114
1269
  resizeHeight(distance: number): number;
1115
1270
  } & {
@@ -1118,18 +1273,18 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
1118
1273
  } & {
1119
1274
  forceLoadTrack: boolean;
1120
1275
  byteEstimate: import("@jbrowse/display-kit/regionTooLargeUtils").ByteEstimate | undefined;
1121
- gateMeasuredViewportKey: string | undefined;
1276
+ gateMeasuredViewportKey: unknown;
1122
1277
  } & {
1123
1278
  readonly gateEnabled: boolean;
1124
1279
  readonly byteGateAdapterConfig: Record<string, unknown>;
1125
1280
  readonly configuredFetchSizeLimit: number | undefined;
1126
1281
  readonly densityTooLarge: boolean;
1127
- readonly byteGateAdapterPath: string[];
1282
+ readonly byteGateAdapterPath: import("@jbrowse/display-kit/RegionTooLargeMixin").ByteGateAdapterPath;
1128
1283
  readonly adapterFetchSizeLimit: number | undefined;
1129
1284
  readonly configForceLoad: boolean;
1285
+ readonly gateViewportSpanBp: number | undefined;
1130
1286
  readonly gateViewport: import("@jbrowse/display-kit/regionTooLargeUtils").GateViewport | undefined;
1131
1287
  } & {
1132
- readonly byteGateAdapterKey: string;
1133
1288
  readonly aboveForceLoadFloor: boolean;
1134
1289
  readonly gateExempt: boolean;
1135
1290
  readonly estimatedFetchBytes: number | undefined;
@@ -1151,6 +1306,7 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
1151
1306
  readonly gateSkipsMeasuredViewport: boolean;
1152
1307
  } & {
1153
1308
  clearByteEstimate(): void;
1309
+ clearGateMeasurements(): void;
1154
1310
  setForceLoadTrack(flag: boolean): void;
1155
1311
  } & {
1156
1312
  commitFetchBytes(perRegionBytes: (number | undefined)[], issued: import("@jbrowse/display-kit/regionTooLargeUtils").GateFetchState, partial?: boolean): void;
@@ -1160,14 +1316,17 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
1160
1316
  afterAttach(): void;
1161
1317
  } & {
1162
1318
  canvasDrawn: boolean;
1319
+ paintCount: number;
1163
1320
  currentRenderingBackend: unknown;
1164
1321
  renderTick: number;
1165
1322
  autorunsInstalled: boolean;
1166
1323
  renderError: unknown;
1324
+ offScreen: boolean;
1167
1325
  } & {
1168
1326
  readonly canRender: boolean;
1169
1327
  readonly rendersCanvas: boolean;
1170
1328
  readonly paintInert: boolean;
1329
+ readonly paintSuperseded: boolean;
1171
1330
  } & {
1172
1331
  readonly painted: boolean;
1173
1332
  } & {
@@ -1175,11 +1334,12 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
1175
1334
  resetCanvasDrawn(): void;
1176
1335
  stopRenderingBackend(): void;
1177
1336
  renderNow(): void;
1337
+ setOffScreen(offScreen: boolean): void;
1178
1338
  setRenderError(error: unknown): void;
1179
1339
  } & {
1180
1340
  attachRenderingBackend<B>(backend: B, setup: () => import("@jbrowse/render-core/RenderLifecycleMixin").RenderingBackendCallbacks<B>): void;
1181
1341
  } & {
1182
- activeStopToken: import("@jbrowse/core/util").StopToken | undefined;
1342
+ activeSignal: AbortSignal | undefined;
1183
1343
  fetchGeneration: number;
1184
1344
  reloadCounter: number;
1185
1345
  statusWindow: import("@jbrowse/core/util").StatusWindow;
@@ -1200,7 +1360,8 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
1200
1360
  readonly fetchInert: boolean;
1201
1361
  readonly awaitingPrerequisite: boolean;
1202
1362
  readonly awaitingDependentData: boolean;
1203
- readonly rpcPropsCacheKey: string;
1363
+ } & {
1364
+ readonly settingsFetchInputs: unknown;
1204
1365
  } & {
1205
1366
  setError(error?: unknown): void;
1206
1367
  setStatusMessage(status?: import("@jbrowse/core/util").RpcStatus): void;
@@ -1212,7 +1373,7 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
1212
1373
  cancelFetchByUser(): void;
1213
1374
  reload(): void;
1214
1375
  beforeDestroy(): void;
1215
- beginFetch(stopToken: import("@jbrowse/core/util").StopToken): void;
1376
+ beginFetch(signal: AbortSignal): void;
1216
1377
  endFetch(current: boolean): void;
1217
1378
  } & {
1218
1379
  runFetch: (work: (ctx: import("@jbrowse/display-kit/FetchMixin").FetchContext) => Promise<void>) => Promise<void>;
@@ -1221,31 +1382,44 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
1221
1382
  } & {
1222
1383
  readonly host: import("@jbrowse/display-kit/regionHost").RegionHost;
1223
1384
  readonly canvasWidthPx: number;
1385
+ readonly settledSubPixelBinBp: number;
1224
1386
  readonly canRender: boolean;
1225
1387
  readonly rendersCanvas: boolean;
1388
+ readonly trackVisibleRegions: import("@jbrowse/display-kit/regionHost").VisibleRegion[];
1226
1389
  readonly viewportWithinLoadedData: boolean;
1227
1390
  readonly viewportEmpty: boolean;
1228
1391
  readonly fetchSuspended: boolean;
1229
1392
  readonly layoutReady: boolean;
1230
- readonly regionFetchKey: string;
1231
- regionHasData(_displayedRegionIndex: number): boolean;
1393
+ regionHasData(displayedRegionIndex: number): boolean;
1232
1394
  readonly dataSuperseded: boolean;
1233
1395
  readonly renderBlocks: import("@jbrowse/render-core/renderBlock").RenderBlock[];
1396
+ } & {
1397
+ readonly fetchInputs: import("@jbrowse/display-kit/fetchInputs").FetchInputs;
1398
+ } & {
1399
+ readonly regionPayloads: ReadonlyMap<number, unknown>;
1400
+ readonly hasRegionData: boolean;
1234
1401
  } & {
1235
1402
  isCacheValid(displayedRegionIndex: number): boolean;
1236
1403
  } & {
1404
+ readonly staleSettingsDrawn: boolean;
1237
1405
  readonly dataCurrent: boolean;
1238
1406
  readonly loadedAssembly: import("@jbrowse/core/assemblyManager/assembly").Assembly | undefined;
1407
+ } & {
1408
+ readonly phaseViewportCurrent: boolean;
1239
1409
  } & {
1240
1410
  readonly svgReady: boolean;
1241
1411
  readonly paintInert: boolean;
1412
+ readonly paintSuperseded: boolean;
1242
1413
  readonly displayPhase: import("@jbrowse/render-core/displayPhase").DisplayPhase;
1243
1414
  } & {
1244
- setLoadedRegion(displayedRegionIndex: number, region: import("@jbrowse/core/util").Region, fetchKey?: string): void;
1415
+ setLoadedRegion(displayedRegionIndex: number, region: import("@jbrowse/core/util").Region, payload: import("@jbrowse/display-kit/regionCommit").RegionPayload | undefined, fetchInputs?: import("@jbrowse/display-kit/fetchInputs").FetchInputs): void;
1416
+ evictRegionStore(keep: ReadonlySet<number>): void;
1245
1417
  dropLoadedRegion(displayedRegionIndex: number): void;
1246
1418
  clearDisplaySpecificData(): void;
1419
+ clearSettingsBakedData(): void;
1247
1420
  } & {
1248
1421
  clearAllRpcData(): void;
1422
+ invalidateSettings(): void;
1249
1423
  reload(): void;
1250
1424
  } & {
1251
1425
  fetchNeeded(_needed: IndexedRegion[]): void;
@@ -1256,23 +1430,25 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
1256
1430
  } & {
1257
1431
  /** every `fetchNeeded` call, as the region list it was handed */
1258
1432
  fetchLog: IndexedRegion[][];
1259
- loadedData: Map<number, string>;
1260
1433
  /**
1261
- * What `regionFetchKey` answers. A volatile, not a `control` knob, and
1262
- * that is the point: a real display's key reads view state, so the
1263
- * autorun re-runs when it moves. A plain closure value would be memoized
1264
- * by the computed and never invalidate.
1434
+ * What `zoomFetchArgs` answers. A volatile, not a `control` knob, and
1435
+ * that is the point: a real display's args read view state, so the
1436
+ * autorun re-runs when they move. A plain closure value would be
1437
+ * memoized by the computed and never invalidate.
1265
1438
  */
1266
1439
  fetchKey: string;
1267
1440
  } & {
1441
+ regionHasData(displayedRegionIndex: number): boolean;
1442
+ } & {
1443
+ /** the fetched payloads, off the foundation's store */
1444
+ readonly loadedData: ReadonlyMap<number, string>;
1268
1445
  readonly gateEnabled: boolean;
1269
1446
  readonly densityTooLarge: boolean;
1270
- readonly regionFetchKey: string;
1271
- regionHasData(_displayedRegionIndex: number): boolean;
1447
+ zoomFetchArgs(): {
1448
+ key: string;
1449
+ };
1272
1450
  } & {
1273
1451
  setFetchKey(key: string): void;
1274
- setLoaded(displayedRegionIndex: number, value: string): void;
1275
- clearDisplaySpecificData(): void;
1276
1452
  } & {
1277
1453
  fetchNeeded(needed: IndexedRegion[]): Promise<void>;
1278
1454
  }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
@@ -1280,7 +1456,7 @@ export declare function createPerRegionTestEnvironment({ measuresBytes, gate, es
1280
1456
  };
1281
1457
  mockRpcCall: jest.Mock<any, any, any>;
1282
1458
  pluginManager: import("@jbrowse/core/PluginManager").default;
1283
- trackConfig: any;
1459
+ trackConfig: import("@jbrowse/core/configuration").PluggableConfigNode & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/core/PluginManager").PluggableConfigSchemaType>;
1284
1460
  control: PerRegionTestControl;
1285
1461
  };
1286
1462
  export {};