import { AfterViewInit, ElementRef, OnDestroy } from '@angular/core';
import { ReplaySubject, Subscription } from 'rxjs';
import { AnchorActiveChangeSource, IAnchorBox } from './anchor.type';
import * as i0 from "@angular/core";
export declare class AnchorDirective implements AfterViewInit, OnDestroy {
    private el;
    anchor: string;
    anchorActive: string;
    _isActive: boolean;
    set isActive(active: boolean);
    get isActive(): boolean;
    activeChangeBy: AnchorActiveChangeSource;
    activeChangeSubscription: Subscription;
    activeChangeSubject: ReplaySubject<unknown>;
    lastActiveBy: string;
    element: HTMLElement;
    _boxElement: IAnchorBox;
    set boxElement(box: IAnchorBox);
    get boxElement(): IAnchorBox;
    scrollListenTarget: Element | Window;
    REACH_TOP_VISION_OFFSET: number;
    private THROTTLE_DELAY;
    private THROTTLE_TRIGGER;
    private scrollPreStart;
    private scrollTimer;
    constructor(el: ElementRef);
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    beFocused(): void;
    throttle: () => void;
    checkActiveStatus: (activeChangeBy?: AnchorActiveChangeSource) => void;
    updateScrollListenTarget(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<AnchorDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<AnchorDirective, "[dAnchor]", never, { "anchor": "dAnchor"; "anchorActive": "anchorActive"; }, {}, never, never, false>;
}
