import { VirtualFileMetrics } from "../types.js";
import { WorkerPoolManager } from "../worker/WorkerPoolManager.js";
import "../worker/index.js";
import { File, FileOptions, FileRenderProps } from "./File.js";
import { Virtualizer } from "./Virtualizer.js";

//#region src/components/VirtualizedFile.d.ts
declare class VirtualizedFile<LAnnotation = undefined> extends File<LAnnotation> {
  private virtualizer;
  private metrics;
  readonly __id: string;
  top: number | undefined;
  height: number;
  private heightCache;
  private isVisible;
  private isSetup;
  constructor(options: FileOptions<LAnnotation> | undefined, virtualizer: Virtualizer, metrics?: VirtualFileMetrics, workerManager?: WorkerPoolManager, isContainerManaged?: boolean);
  getLineHeight(lineIndex: number, hasMetadataLine?: boolean): number;
  setOptions(options: FileOptions<LAnnotation> | undefined): void;
  reconcileHeights(): void;
  onRender: (dirty: boolean) => boolean;
  cleanUp(): void;
  private computeApproximateSize;
  setVisibility(visible: boolean): void;
  render({
    fileContainer,
    file,
    ...props
  }: FileRenderProps<LAnnotation>): boolean;
  private computeRenderRangeFromWindow;
}
//#endregion
export { VirtualizedFile };
//# sourceMappingURL=VirtualizedFile.d.ts.map