import { ElementRef, Renderer2, OnInit, OnDestroy, EventEmitter } from '@angular/core';
import { Router, ActivatedRoute, Params } from '@angular/router';
export declare class NavItemActiveDirective implements OnInit, OnDestroy {
    private router;
    private el;
    private renderer;
    private route;
    /** The CSS class to apply to the host element when the url is active */
    classValue?: string;
    /**
     * Determines whether the directive will try to make an exact match on the url or not
     * If false, the directive will add the active class if the first part of the url matches
     * the active route.
     * see: https://angular.io/api/router/Router#isactive
     */
    set exact(value: boolean | undefined);
    private _exact;
    /** Router link query params */
    queryParams?: Params | null;
    /**
     * The url of the NavItem to check for activeness. Convert the item url into a
     * UrlTree relative to the ActivatedRoute so router#isActive works even with relative urls.
     * See Angular's [routerLink](https://github.com/angular/angular/blob/8282e15c2becbe42a49befa07d6407247e8243d8/packages/router/src/directives/router_link.ts#L249)
     * and [routerLinkActive](https://github.com/angular/angular/blob/8282e15c2becbe42a49befa07d6407247e8243d8/packages/router/src/directives/router_link_active.ts#L139)
     * for a similiar implementation.
     */
    set url(value: string | undefined);
    private _url?;
    /** Emits when the url becomes active */
    routerLinkActivated: EventEmitter<Event>;
    /** Subject that emits when component is destroyed to unsubscribe from any subscriptions */
    private destroyed;
    constructor(router: Router, el: ElementRef, renderer: Renderer2, route: ActivatedRoute);
    /** Check if url is active on NavigationEnd events */
    ngOnInit(): void;
    ngOnDestroy(): void;
    /** If url is active apply the defined class to the element, otherwise remove it */
    private update;
}
