export interface TranscriptScrollPort { scrollBy(dy: number): boolean; scrollToTop(): boolean; scrollToBottom(): boolean; updateAutoScroll(x: number, y: number): void; stopAutoScroll(): void; readonly active: boolean; readonly metrics: ScrollMetrics; onMetrics(listener: (metrics: ScrollMetrics) => void): () => void; } export interface ScrollMetrics { readonly linesAbove: number; readonly linesBelow: number; } export declare const EMPTY_SCROLL_METRICS: ScrollMetrics; type Handler = (dy: number) => void; type JumpHandler = () => void; type AutoScrollHandler = { update(x: number, y: number): void; stop(): void; }; export declare const transcriptScrollPort: TranscriptScrollPort; export declare function registerTranscriptScrollPort(next: Handler): () => void; export declare function registerTranscriptJumpHandlers(top: JumpHandler, bottom: JumpHandler): () => void; export declare function registerTranscriptAutoScroll(next: AutoScrollHandler): () => void; export declare function publishTranscriptScrollMetrics(next: ScrollMetrics): void; export {};