import { IResourceFactory } from "../../interfaces/api"; import { ITask, ITaskResult } from "../activeRecords/Task"; import ResourceFactory from "../ResourceFactory"; import { IClient } from "../../Client"; import { hasGetByCriteria, IHasGetFactory } from "./mixins/hasGetByCriteria"; import { IHasGetByIdFactory } from "./mixins/hasGetById"; import { IHasCreateFactory } from "./mixins/hasCreate"; import { IHasUpdateFactory } from "./mixins/hasUpdate"; import { ObjectKey } from "../../interfaces/common"; import { IFactoryConstructors } from "./index"; export declare type ITaskFactory = IResourceFactory & IHasGetFactory & IHasGetByIdFactory & IHasCreateFactory & IHasUpdateFactory; export interface TaskCreateCriteria { responsible_user_id: number; entity_id?: number; entity_type?: number; is_completed?: boolean; task_type_id?: number; text: string; duration?: number; complete_till: number; result?: ITaskResult; created_by?: number; updated_by?: number; created_at?: number; updated_at?: number; request_id?: string; } export declare type TaskUpdateCriteria = TaskCreateCriteria; /** * Фабрика управления сделками * */ export declare class BaseTaskFactory extends ResourceFactory { protected entityType?: string; constructor(client: IClient, entityType?: string); getEntityClass(): import("../../types").TConstructor; getBaseUrl(): string; getEmbeddedKey(): ObjectKey; } export declare const mixins: (typeof hasGetByCriteria)[]; export declare const TaskFactory: any;