import { IDimension, IStoreState } from '../index.data'; import { SpreadSheetRuntime } from '../RuntimeContext'; export declare function inFrozenArea(state: IStoreState): boolean; /** * 根据上述exceeds, 重新设置 scrollX/scrollY */ export declare function tryMoveSelectedIntoView(context: SpreadSheetRuntime, dim: IDimension): boolean; /** * 计算scrollX/scrollY, 使选中的区域移到屏幕内 * @param state * @param 当前选区的位置, 可以很容易地判断哪个方向在选区外. 这个参数是冗余的, 但避免了重复计算 * @return */ export declare function getScrollByMoveSelectIntoView(state: IStoreState, dim: IDimension): { scrollX: number; scrollY: number; }; /** * 当selectedRow底部超出视口时, 重新计算scrollY, 使底部上升到视口中 * @param state * @param viewport * @param _rowIndex * @return 新的scrollY, 此scrollY将使rowIndex代表的行滚动到视口内部 */ export declare function getScrollYMadeBottomVisible_whenBottomExceed(state: IStoreState, viewport: { w: number; h: number; }, _rowIndex: number): number; export declare function getScrollYMadeTopVisible_whenTopExceed(state: IStoreState, viewport: { w: number; h: number; }, _rowIndex: number): number; export declare function getScrollXMadeLeftVisible_whenLeftExceed(state: IStoreState, viewport: { w: number; h: number; }, _colIndex: number): number;