import { InjectionToken } from '@angular/core'; import { Subscription } from 'rxjs'; import { TreeModel, TreeNode } from '../models'; export declare const VIRTUAL_SCROLL_NODE_HEIGHT_QUOTA: InjectionToken; export interface PosPair { startPos: number; endPos: number; } export declare class TreeVirtualScroll { private quota; id: number; averageNodeHeight: number; hasEnoughNodeHeight: boolean; private currentViewport; private lastScrollTop; private disabled; private collectionMonitor$; private nodeHeightAnalytics$; constructor(quota: number); adjustViewport(viewport: ClientRect, scrollTop: number): void; waitForCollection(observer: any): Subscription; reportNodeHeight(data: number): void; reCalcPositions(treeModel: TreeModel): void; setDisabled(isDisabled: boolean): void; isDisabled(): boolean; scrollIntoView(node: TreeNode, force: boolean, scrollToMiddle?: boolean): number | null; private getPositionAfter; private getPositionAfterNode; private collectAverageNodeHeight; }