import { ElementRef, AfterContentInit, EventEmitter, QueryList, TemplateRef } from '@angular/core';
import { Header, Footer } from 'primeng/api';
import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';
import { BlockableUI } from 'primeng/api';
import * as i0 from "@angular/core";
import * as i1 from "@angular/common";
import * as i2 from "@angular/cdk/scrolling";
import * as i3 from "primeng/api";
export declare class VirtualScroller implements AfterContentInit, BlockableUI {
    el: ElementRef;
    value: any[];
    itemSize: number;
    style: any;
    styleClass: string;
    scrollHeight: any;
    lazy: boolean;
    rows: number;
    minBufferPx: number;
    maxBufferPx: number;
    delay: number;
    trackBy: Function;
    header: Header;
    footer: Footer;
    templates: QueryList<any>;
    viewport: CdkVirtualScrollViewport;
    onLazyLoad: EventEmitter<any>;
    itemTemplate: TemplateRef<any>;
    headerTemplate: TemplateRef<any>;
    footerTemplate: TemplateRef<any>;
    loadingItemTemplate: TemplateRef<any>;
    _totalRecords: number;
    page: number;
    _first: number;
    _cache: boolean;
    virtualScrollTimeout: any;
    virtualPage: number;
    constructor(el: ElementRef);
    get totalRecords(): number;
    set totalRecords(val: number);
    get first(): number;
    set first(val: number);
    get cache(): boolean;
    set cache(val: boolean);
    ngAfterContentInit(): void;
    onScrollIndexChange(index: number): void;
    getBlockableElement(): HTMLElement;
    scrollTo(index: number, mode?: ScrollBehavior): void;
    scrollToIndex(index: number, mode?: ScrollBehavior): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<VirtualScroller, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<VirtualScroller, "p-virtualScroller", never, { "value": "value"; "itemSize": "itemSize"; "style": "style"; "styleClass": "styleClass"; "scrollHeight": "scrollHeight"; "lazy": "lazy"; "rows": "rows"; "minBufferPx": "minBufferPx"; "maxBufferPx": "maxBufferPx"; "delay": "delay"; "trackBy": "trackBy"; "totalRecords": "totalRecords"; "first": "first"; "cache": "cache"; }, { "onLazyLoad": "onLazyLoad"; }, ["header", "footer", "templates"], ["p-header", "p-footer"]>;
}
export declare class VirtualScrollerModule {
    static ɵfac: i0.ɵɵFactoryDeclaration<VirtualScrollerModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<VirtualScrollerModule, [typeof VirtualScroller], [typeof i1.CommonModule, typeof i2.ScrollingModule], [typeof VirtualScroller, typeof i3.SharedModule, typeof i2.ScrollingModule]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<VirtualScrollerModule>;
}
