import { IResourceEntity, IResourceFactory } from "../../../interfaces/api"; import { TConstructor } from "../../../types"; import { IRequestOptions } from "../../../interfaces/common"; import { IHasCreateFactory } from "../../factories/mixins/hasCreate"; import { IHasUpdateFactory } from "../../factories/mixins/hasUpdate"; import { IHasCreate, IHasCreateEntity } from "./hasCreate"; import { IHasUpdate, IHasUpdateEntity } from "./hasUpdate"; export declare type IHasCreateAndUpdateFactory>> = IHasCreateFactory & IHasUpdateFactory; export declare type IHasCreateAndUpdateEntity>> = IHasCreateEntity & IHasUpdateEntity; export interface IHasSave>> extends IHasCreate, IHasUpdate { save(options?: IRequestOptions): Promise>; } export declare type IHasSaveEntity>> = IResourceEntity & IHasCreate & IHasUpdate & IHasSave; export declare function hasSave>>(Base: TConstructor>): TConstructor>;