import type { Screen, ScreenName } from "./screens/screen.js"; import { type RowMarks } from "./marks.js"; import type { TreeNode } from "./types.js"; import { type View } from "./views/view.js"; export type HostScreens = Record; export declare class ScreenHost { private readonly screens; private readonly overlays; private active; private traceId; private help; private following; private marks; constructor(screens: HostScreens, initial: ScreenName, traceId: string); activeScreen(): ScreenName; currentTraceId(): string; screen(name: ScreenName): Screen; target(): View | Screen; overlayOpen(): boolean; helpOpen(): boolean; toggleHelp(): void; closeHelp(): void; /** The shared cursor: what was focused where we were is focused where * we are going. */ switchTo(name: ScreenName, focusId?: string): void; openOverlay(view: View): void; closeOverlay(): void; selectTrace(traceId: string, query?: string): void; stepTrace(delta: 1 | -1, traceIds: string[]): void; setData(roots: TreeNode[], fallbackTraceId: string): void; setFollowIndicator(on: boolean): void; setMarks(marks: RowMarks): void; escapeOverlay(): boolean; escapeScreen(): boolean; private showTrace; private closeAllOverlays; private everyView; }