import { CdkVirtualScrollViewport, VirtualScrollStrategy } from "@angular/cdk/scrolling";
import { Observable } from "rxjs";
export declare class TableVirtualScrollLinearStrategy implements VirtualScrollStrategy {
    private rowHeight;
    private readonly indexChange;
    private viewport?;
    /** The size of the items in the virtually scrolling list. */
    private rowCount?;
    scrolledIndexChange: Observable<number>;
    constructor(rowHeight: number);
    attach(viewport: CdkVirtualScrollViewport): void;
    detach(): void;
    onContentScrolled(): void;
    onDataLengthChanged(): void;
    onContentRendered(): void;
    onRenderedOffsetChanged(): void;
    scrollToIndex(index: number, behavior: ScrollBehavior): void;
    /**
     * Sets the size of the items in the virtually scrolling list.
     * @param length
     */
    setDataLength(length: number): void;
    /**
     * Sets scroll height.
     * @param rowHeight
     */
    setRowHeight(rowHeight: number): void;
    /**
     * Updates content and emits updated indexes.
     * @param viewport
     */
    private updateContent;
    private updateViewportDataLength;
}
/**
 * @deprecated in v11 - Use TableVirtualScrollLinearStrategy instead - Removal: NUI-5796
 */
export declare class TableVirtualScrollStrategy implements VirtualScrollStrategy {
    private rowHeight;
    private headerOffset;
    private readonly indexChange;
    private viewport;
    scrolledIndexChange: Observable<number>;
    /** Buffer for items before needing to render more items. */
    private bufferSize;
    /** The size of the items in the virtually scrolling list. */
    private itemsSize;
    private _maxItems;
    set maxItems(maxItems: number);
    get maxItems(): number;
    constructor(rowHeight: number, headerOffset: number);
    attach(viewport: CdkVirtualScrollViewport): void;
    detach(): void;
    onContentScrolled(): void;
    onDataLengthChanged(): void;
    onContentRendered(): void;
    onRenderedOffsetChanged(): void;
    scrollToIndex(index: number, behavior: ScrollBehavior): void;
    /**
     * Sets the size of the items in the virtually scrolling list.
     * @param length
     */
    setDataLength(length: number): void;
    /**
     * Sets scroll height.
     * @param rowHeight
     * @param headerOffset
     */
    setScrollHeight(rowHeight: number, headerOffset: number): void;
    /**
     * Updates content and emits updated indexes.
     * @param viewport
     */
    private updateContent;
}
