import { TargetMetadataArgsCollection } from "./collection/TargetMetadataArgsCollection"; import { PropertyMetadataArgsCollection } from "./collection/PropertyMetadataArgsCollection"; import { RelationMetadataArgs } from "./RelationMetadataArgs"; import { ColumnMetadataArgs } from "./ColumnMetadataArgs"; import { RelationCountMetadataArgs } from "./RelationCountMetadataArgs"; import { IndexMetadataArgs } from "./IndexMetadataArgs"; import { EntityListenerMetadataArgs } from "./EntityListenerMetadataArgs"; import { TableMetadataArgs } from "./TableMetadataArgs"; import { NamingStrategyMetadataArgs } from "./NamingStrategyMetadataArgs"; import { JoinTableMetadataArgs } from "./JoinTableMetadataArgs"; import { JoinColumnMetadataArgs } from "./JoinColumnMetadataArgs"; import { EmbeddedMetadataArgs } from "./EmbeddedMetadataArgs"; import { EntitySubscriberMetadataArgs } from "./EntitySubscriberMetadataArgs"; import { RelationIdMetadataArgs } from "./RelationIdMetadataArgs"; import { InheritanceMetadataArgs } from "./InheritanceMetadataArgs"; import { DiscriminatorValueMetadataArgs } from "./DiscriminatorValueMetadataArgs"; /** * Storage all metadatas of all available types: tables, fields, subscribers, relations, etc. * Each metadata represents some specifications of what it represents. */ export declare class MetadataArgsStorage { readonly tables: TargetMetadataArgsCollection; readonly namingStrategies: TargetMetadataArgsCollection; readonly entitySubscribers: TargetMetadataArgsCollection; readonly indices: TargetMetadataArgsCollection; readonly columns: PropertyMetadataArgsCollection; readonly relations: PropertyMetadataArgsCollection; readonly joinColumns: PropertyMetadataArgsCollection; readonly joinTables: PropertyMetadataArgsCollection; readonly entityListeners: PropertyMetadataArgsCollection; readonly relationCounts: PropertyMetadataArgsCollection; readonly relationIds: PropertyMetadataArgsCollection; readonly embeddeds: PropertyMetadataArgsCollection; readonly inheritances: TargetMetadataArgsCollection; readonly discriminatorValues: TargetMetadataArgsCollection; /** * Gets merged (with all abstract classes) table metadatas for the given classes. */ getMergedTableMetadatas(classes?: Function[]): { table: TableMetadataArgs; parent: undefined; inheritance: InheritanceMetadataArgs | undefined; children: TableMetadataArgs[]; indices: TargetMetadataArgsCollection; columns: PropertyMetadataArgsCollection; relations: PropertyMetadataArgsCollection; joinColumns: PropertyMetadataArgsCollection; joinTables: PropertyMetadataArgsCollection; entityListeners: PropertyMetadataArgsCollection; relationCounts: PropertyMetadataArgsCollection; relationIds: PropertyMetadataArgsCollection; embeddeds: PropertyMetadataArgsCollection; discriminatorValues: DiscriminatorValueMetadataArgs[]; }[]; /** * Gets merged (with all abstract classes) embeddable table metadatas for the given classes. */ getMergedEmbeddableTableMetadatas(classes?: Function[]): { table: TableMetadataArgs; columns: PropertyMetadataArgsCollection; }[]; /** */ private mergeWithAbstract(allTableMetadatas, table); /** */ private mergeWithEmbeddable(allTableMetadatas, tableMetadata); /** * Checks if this table is inherited from another table. */ private isInherited(target1, target2); }