import { AfterContentInit, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
import { TableComponent } from '../table';
import { FixedSizeTableVirtualScrollStrategy } from './fixed-size-table-virtual-scroll-strategy';
import * as i0 from "@angular/core";
export declare function _tableVirtualScrollDirectiveStrategyFactory(tableDir: FixedSizeTableVirtualScrollDirective): FixedSizeTableVirtualScrollStrategy;
export declare class FixedSizeTableVirtualScrollDirective<T = unknown> implements AfterContentInit, OnChanges, OnDestroy {
    private readonly onDestroy$;
    private readonly _dataSource$$;
    rowHeight: number;
    headerHeight: number;
    buffer: number;
    set dataSource(dataSource: T[]);
    table: TableComponent<any>;
    scrollStrategy: FixedSizeTableVirtualScrollStrategy;
    private stickyPositions;
    ngAfterContentInit(): void;
    ngOnChanges({ rowHeight, headerHeight, buffer }: SimpleChanges): void;
    ngOnDestroy(): void;
    private isStickyEnabled;
    private initStickyPositions;
    private setSticky;
    static ɵfac: i0.ɵɵFactoryDeclaration<FixedSizeTableVirtualScrollDirective<any>, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<FixedSizeTableVirtualScrollDirective<any>, "aui-virtual-scroll-viewport[fixedSize]", ["viewPort"], { "rowHeight": { "alias": "rowHeight"; "required": false; }; "headerHeight": { "alias": "headerHeight"; "required": false; }; "buffer": { "alias": "buffer"; "required": false; }; "dataSource": { "alias": "dataSource"; "required": false; }; }, {}, ["table"], never, true, never>;
}
