import { FileTreeScrollOffset } from "../model/publicTypes.js";

//#region src/render/scrollTarget.d.ts
type FileTreeScrollTargetInput = {
  focusedIndex: number;
  itemHeight: number;
  viewportHeight: number;
};
type FileTreeMinimalScrollIntoViewInput = FileTreeScrollTargetInput & {
  currentScrollTop: number;
  topInset?: number;
};
declare function computeFocusedRowScrollIntoView(input: FileTreeMinimalScrollIntoViewInput): number | null;
type FileTreeOffsetScrollInput = FileTreeScrollTargetInput & {
  currentScrollTop: number;
  offset: FileTreeScrollOffset;
  topInset?: number;
  totalHeight: number;
};
declare function computeFocusedRowScrollTopForOffset(input: FileTreeOffsetScrollInput): number | null;
type FileTreeViewportOffsetScrollInput = FileTreeScrollTargetInput & {
  currentScrollTop: number;
  totalHeight: number;
  targetViewportOffset: number;
};
declare function computeViewportOffsetScrollTop(input: FileTreeViewportOffsetScrollInput): number | null;
//#endregion
export { FileTreeMinimalScrollIntoViewInput, FileTreeOffsetScrollInput, FileTreeScrollTargetInput, FileTreeViewportOffsetScrollInput, computeFocusedRowScrollIntoView, computeFocusedRowScrollTopForOffset, computeViewportOffsetScrollTop };
//# sourceMappingURL=scrollTarget.d.ts.map