UNPKG

1.12 kBTypeScriptView Raw
1/**
2 * @license
3 * Copyright Google LLC All Rights Reserved.
4 *
5 * Use of this source code is governed by an MIT-style license that can be
6 * found in the LICENSE file at https://angular.io/license
7 */
8/// <amd-module name="@angular/compiler-cli/src/transformers/metadata_cache" />
9import ts from 'typescript';
10import { MetadataCollector, MetadataValue, ModuleMetadata } from '../metadata/index';
11import { MetadataProvider } from './compiler_host';
12export declare type ValueTransform = (value: MetadataValue, node: ts.Node) => MetadataValue;
13export interface MetadataTransformer {
14 connect?(cache: MetadataCache): void;
15 start(sourceFile: ts.SourceFile): ValueTransform | undefined;
16}
17/**
18 * Cache, and potentially transform, metadata as it is being collected.
19 */
20export declare class MetadataCache implements MetadataProvider {
21 private collector;
22 private readonly strict;
23 private transformers;
24 private metadataCache;
25 constructor(collector: MetadataCollector, strict: boolean, transformers: MetadataTransformer[]);
26 getMetadata(sourceFile: ts.SourceFile): ModuleMetadata | undefined;
27}