import { TypeMetadata } from "./TypeMetadata"; import { ExposeMetadata } from "./ExposeMetadata"; import { ExcludeMetadata } from "./ExcludeMetadata"; import { TransformationType } from "../TransformOperationExecutor"; import { TransformMetadata } from "./TransformMetadata"; /** * Storage all library metadata. */ export declare class MetadataStorage { private _typeMetadatas; private _transformMetadatas; private _exposeMetadatas; private _excludeMetadatas; private _ancestorsMap; addTypeMetadata(metadata: TypeMetadata): void; addTransformMetadata(metadata: TransformMetadata): void; addExposeMetadata(metadata: ExposeMetadata): void; addExcludeMetadata(metadata: ExcludeMetadata): void; findTransformMetadatas(target: Function, propertyName: string, transformationType: TransformationType): TransformMetadata[]; findExcludeMetadata(target: Function, propertyName: string): ExcludeMetadata; findExposeMetadata(target: Function, propertyName: string): ExposeMetadata; findExposeMetadataByCustomName(target: Function, name: string): ExposeMetadata; findTypeMetadata(target: Function, propertyName: string): TypeMetadata; getStrategy(target: Function): "excludeAll" | "exposeAll" | "none"; getExposedMetadatas(target: Function): ExposeMetadata[]; getExcludedMetadatas(target: Function): ExcludeMetadata[]; getExposedProperties(target: Function, transformationType: TransformationType): string[]; getExcludedProperties(target: Function, transformationType: TransformationType): string[]; clear(): void; private getMetadata; private findMetadata; private findMetadatas; private getAncestors; }