class Asset extends VendureEntity implements Taggable, ChannelAware, HasCustomFields, Translatable { constructor(input?: DeepPartial<Asset>) name: LocaleString; @Column('varchar') type: AssetType; @Column() mimeType: string; @Column({ default: 0 }) width: number; @Column({ default: 0 }) height: number; @Column() fileSize: number; @Column() source: string; @Column() preview: string; @Column('simple-json', { nullable: true }) focalPoint?: { x: number; y: number }; @ManyToMany(type => Tag) @JoinTable() tags: Tag[]; @ManyToMany(type => Channel) @JoinTable() channels: Channel[]; @OneToMany(type => Collection, collection => collection.featuredAsset) featuredInCollections?: Collection[]; @OneToMany(type => ProductVariant, productVariant => productVariant.featuredAsset) featuredInVariants?: ProductVariant[]; @OneToMany(type => Product, product => product.featuredAsset) featuredInProducts?: Product[]; @Column(type => CustomAssetFields) customFields: CustomAssetFields; @OneToMany(type => AssetTranslation, translation => translation.base, { eager: true }) translations: Array<Translation<Asset>>;}