import { IResourceEntity, IResourceFactory } from "../../../../interfaces/api"; import { TConstructor, TEntityConstructor } from "../../../../types"; import { IEmbeddedContact } from "../../Contact"; export declare type IContactCriteria = (IEmbeddedContact)[]; export interface IHasEmbeddedContactsEntity>> extends IResourceEntity { getContacts(): IEmbeddedContact[]; addContacts(criteria: IContactCriteria): IResourceEntity; removeContacts(criteria: IContactCriteria): IResourceEntity; contactList: IEntityContactList; } export interface IEntityContactList>> { get(): IEmbeddedContact[]; add(criteria: IContactCriteria): IResourceEntity; remove(criteria: IContactCriteria): IResourceEntity; } export declare function hasContacts>>(Base: TEntityConstructor): TConstructor>;