import { OnDestroy } from '@angular/core';
import { Meta, Title, TransferState } from '@angular/platform-browser';
import { Router } from '@angular/router';
import { RouterMetaConfig } from './router-meta';
import { RouterMetaContextService } from './router-meta-context.service';
import * as i0 from "@angular/core";
/**
 * Service responsible for updating meta tags based on router configuration
 *
 * To provide context - use {@link RouterMetaContextService}
 */
export declare class RouterMetaService implements OnDestroy {
    private platformId;
    private config;
    private router;
    private title;
    private meta;
    private contextService;
    private transferState?;
    private initialized;
    private metaTags;
    private defaultMeta;
    private originalTitle;
    private destroyed$;
    private navigationEnd$;
    private routeData$;
    constructor(platformId: any, config: RouterMetaConfig, router: Router, title: Title, meta: Meta, contextService: RouterMetaContextService, transferState?: TransferState | undefined);
    /**
     * Returns original title of index page.
     *
     * If SSR was used with {@link StateTransfer} -
     * then original title will be preserved between server and client states
     */
    getOriginalTitle(): string;
    /** @internal */
    ngOnDestroy(): void;
    /** @internal */
    _setup(): void;
    private updateAllMeta;
    private resetAllMeta;
    private updateTitle;
    private resetTitle;
    private updateMeta;
    private resetMeta;
    private getLastRoute;
    static ɵfac: i0.ɵɵFactoryDeclaration<RouterMetaService, [null, null, null, null, null, null, { optional: true; }]>;
    static ɵprov: i0.ɵɵInjectableDeclaration<RouterMetaService>;
}
//# sourceMappingURL=router-meta.service.d.ts.map