import type { PropType, VNodeChild } from "vue"; import type { Style, Terminal } from "../../core/types.js"; export type TVirtualRowsRowScrollMode = "off" | "unsafe-full-row"; export type TVirtualRowsPaintContext = Readonly<{ terminal: Terminal; item: unknown; index: number; row: number; x: number; y: number; w: number; clipX: number; clipY: number; fullW: number; scrollTop: number; style: Style; }>; export type TVirtualRowsRenderNodesContext = Readonly<{ item: unknown; index: number; row: number; clipX: number; clipY: number; fullW: number; scrollTop: number; }>; export type TVirtualRowsSelectionSpanTextContext = Readonly<{ item: unknown; index: number; x0: number; x1: number; cols: number; }>; export type TVirtualRowsScrollMetrics = Readonly<{ scrollTop: number; maxScrollTop: number; viewportRows: number; itemCount: number; atTop: boolean; atBottom: boolean; }>; export type TVirtualRowsScrollPayload = TVirtualRowsScrollMetrics; export type TVirtualRowsHandle = Readonly<{ scrollTo: (top: number) => void; scrollBy: (delta: number) => void; invalidateIndex: (index: number) => void; invalidateRange: (start: number, end: number) => void; refreshViewport: () => void; getScrollMetrics: () => TVirtualRowsScrollMetrics; }>; export declare const TVirtualRows: import("vue").DefineComponent { start: number; end: number; } | null | undefined>; default: undefined; }; getItem: { type: PropType<(index: number) => unknown>; required: true; }; paintItem: { type: PropType<(ctx: TVirtualRowsPaintContext) => void>; required: true; }; renderItemNodes: { type: PropType<(ctx: TVirtualRowsRenderNodesContext) => VNodeChild>; default: undefined; }; selectionText: { type: PropType<(item: unknown, index: number) => string>; default: undefined; }; selectionSpanText: { type: PropType<(ctx: TVirtualRowsSelectionSpanTextContext) => string>; default: undefined; }; scrollTop: { type: NumberConstructor; default: undefined; }; style: { type: PropType