ngx-router-meta
Version:
Configure HTML meta tags in route configuration of Angular
79 lines • 2.57 kB
TypeScript
import { Router } from '@angular/router';
import { Observable } from 'rxjs';
import { MetaContext, RouteMetaTemplates, RouterMetaConfig } from './router-meta';
import { Indexable } from './types';
import * as i0 from "@angular/core";
/** @internal */
export interface MetaInfo {
replace: RegExp;
value: any;
}
/** @internal */
export interface ProcessedMetaContext extends Indexable<MetaInfo> {
}
/**
* Service to provide context for meta tags
*/
export declare class RouterMetaContextService {
private config;
private router;
private static interpolation;
private ctxNameCache;
private interpolation;
private interpolationStart;
private interpolationEnd;
private navigationEnd$;
private metaDefaultContext$$;
private metaContext$$;
private clearDefaultContext$;
private clearContext$;
private metaDefaultContext$;
private metaContext$;
private context$;
constructor(config: RouterMetaConfig, router: Router);
/**
* Provided context will be available between router navigations
*
* Multiple contexts will be merged together
*/
provideDefaultContext(ctx: MetaContext | Observable<MetaContext>): void;
/**
* Provided context will be available ONLY until next router navigation
*
* Multiple contexts will be merged together
*
* If you want to persist context between navigations -
* use {@link RouterMetaContextService#provideDefaultContext()}
*/
provideContext(ctx: MetaContext | Observable<MetaContext>): void;
/**
* Clear default context provided by
* {@link RouterMetaContextService#provideDefaultContext()}
*/
clearDefaultContext(): void;
/**
* Clear context provided by
* {@link RouterMetaContextService#provideContext()}
*/
clearContext(): void;
/**
* Observable of computed context for meta tags
*/
getContext(): Observable<{
[x: string]: MetaInfo;
}>;
/** @internal */
_templateStr(str?: string, data?: ProcessedMetaContext, extras?: {
name?: string;
templates?: RouteMetaTemplates;
meta?: ProcessedMetaContext;
}): string;
/** @internal */
_processContext(ctx: MetaContext): ProcessedMetaContext;
private prepareContext;
private templateReplace;
private getContextReplace;
static ɵfac: i0.ɵɵFactoryDeclaration<RouterMetaContextService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<RouterMetaContextService>;
}
//# sourceMappingURL=router-meta-context.service.d.ts.map