import { EntityManagerExportExpansions } from "../../core/entity-manager-export-expansions.type"; import { EntityManagerExportExpansionsEmpty } from "../../core/entity-manager-export-expansions-empty.type"; import { CommonField } from "../../field/field-names/common-field.type"; import { PrimaryField } from "../../field/field-names/primary-field.type"; import { RelationField } from "../../field/field-names/relation-field.type"; import { RelationFieldToMany } from "../../field/field-names/relation-field-to-many.type"; import { RelationFieldToOne } from "../../field/field-names/relation-field-to-one.type"; import { PrimaryKey } from "../../field/field-values/primary-key.type"; import { AbstractSerializer } from "../../serializer/abstract.serializer"; import { NestedSerializerMap } from "../../serializer/serializer-map/nested-serializer-map.type"; import { NestedSerializerMapEmpty } from "../../serializer/serializer-map/nested-serializer-map-empty.type"; import { SerializerType } from "../../serializer/serializer-type.interface"; import { AnyEntity } from "../any-entity.type"; import { EntityFromRelationFieldValue } from "../entity-from-relation-field-value.type"; export declare type EntityDataExported = NestedSerializerMapEmpty, Expansions extends EntityManagerExportExpansions = EntityManagerExportExpansionsEmpty> = { [Field in CommonField | PrimaryField]: Serializers[Field] extends SerializerType> ? Value : Entity[Field]; } & { [Field in RelationField]: Expansions[Field] extends true | EntityManagerExportExpansions> ? Field extends RelationFieldToOne ? EntityDataExported, NestedSerializerMapUniformed, Serializers[Field]>, RelationExpansionsUniformed, Expansions[Field]>> : Field extends RelationFieldToMany ? EntityDataExported, NestedSerializerMapUniformed, Serializers[Field]>, RelationExpansionsUniformed, Expansions[Field]>>[] : never : Field extends RelationFieldToOne ? PrimaryKey : Field extends RelationFieldToMany ? PrimaryKey[] : never; }; declare type NestedSerializerMapUniformed = Value extends NestedSerializerMap ? Value : NestedSerializerMapEmpty; declare type RelationExpansionsUniformed = Value extends EntityManagerExportExpansions ? Value : EntityManagerExportExpansionsEmpty; export {}; //# sourceMappingURL=entity-data-exported.type.d.ts.map