import type { TerminalRenderPlane } from "../../core/render-plane.js"; import type { Rect } from "../../events/manager/types.js"; import type { RendererCapabilities } from "../../renderer/capabilities.js"; import type { RenderManager } from "../render/render-manager.js"; export type UnsafeFullRowScrollMode = "off" | "unsafe-full-row"; export type UnsafeFullRowScrollPlan = Readonly<{ exposedRows: readonly number[]; apply: () => void; }>; export declare function exposedRowsForDelta(y0: number, h: number, delta: number): number[]; export declare function prepareUnsafeFullRowScroll(options: Readonly<{ render: Pick; plane: TerminalRenderPlane; rect: Rect; terminalSize: Readonly<{ cols: number; rows: number; }>; delta: number; rowScrollMode: UnsafeFullRowScrollMode; rendererCapabilities: Pick; isClipped: boolean; hasPendingDirtyRows: boolean; strategy?: "auto" | "viewport-repaint"; }>): UnsafeFullRowScrollPlan | null;