import { IResourceEntity, IResourceFactory } from "../../../../interfaces/api"; import { TConstructor, TEntityConstructor } from "../../../../types"; import { IEmbeddedCatalogElement } from "../../CatalogElement"; export declare type IElementCriteria = (IEmbeddedCatalogElement)[]; export interface IHasEmbeddedElementsEntity>> extends IResourceEntity { getElements(): IEmbeddedCatalogElement[]; addElements(criteria: IElementCriteria): IResourceEntity; removeElements(criteria: IElementCriteria): IResourceEntity; catalogElementList: IEntitycatalogElementList; } export interface IEntitycatalogElementList>> { get(): IEmbeddedCatalogElement[]; add(criteria: IElementCriteria): IResourceEntity; remove(criteria: IElementCriteria): IResourceEntity; } export declare function hasElements>>(Base: TEntityConstructor): TConstructor>;