import { ElementRef, EventEmitter, OnDestroy, OnInit } from '@angular/core';
import { Nullable } from '@fundamental-ngx/cdk/utils';
import * as i0 from "@angular/core";
/**
 * Tool directive used to achieve the infinite scroll mechanism.
 */
export declare class InfiniteScrollDirective implements OnInit, OnDestroy {
    private _element;
    /** Scroll percentage at which the onScrollAction event is fired. */
    scrollPercent: number;
    /** Scroll PX at which the onScrollAction event is fired. */
    scrollOffset: Nullable<number>;
    /** Event emitted when the scrollPercent threshold is met. */
    onScrollAction: EventEmitter<void>;
    /** @hidden */
    private _subscription;
    /** @hidden */
    constructor(_element: ElementRef);
    /** @hidden */
    ngOnInit(): void;
    /** @hidden */
    ngOnDestroy(): void;
    /** @hidden */
    shouldTriggerAction(): boolean;
    /** @hidden */
    private _listenOnScroll;
    static ɵfac: i0.ɵɵFactoryDeclaration<InfiniteScrollDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<InfiniteScrollDirective, "[fdInfiniteScroll]", never, { "scrollPercent": { "alias": "scrollPercent"; "required": false; }; "scrollOffset": { "alias": "scrollOffset"; "required": false; }; }, { "onScrollAction": "onScrollAction"; }, never, never, true, never>;
}
