import { Action } from "redux"; import { EActionStatus } from "../../action/enum/EActionStatus"; import { IAction } from "../../action/interface/IAction"; import { Context } from "../../context/Context"; import { WSTransport } from "../../transport/WSTransport"; import { EWorkerStatus } from "../enum/EWorkerStatus"; import { EWorkerType } from "../enum/EWorkerType" import { WorkerParams } from "../type/WorkerParams"; export interface IWorker { time: number, actions:Array, type: EWorkerType, status: EWorkerStatus, datetime: number, context: Context, deleteActionCallback: Function, tranport: WSTransport, maxIntents: number, performeAction (action: IAction) : Promise, getTranport(): WSTransport, setTranport(value: WSTransport): void, getContext() : Context, setContext(value: Context) : void, run() : void isWorking(): boolean, handlerAction(action : IAction): void, getDeleteActionCallback(): Function, setDeleteActionCallback(value: Function): void doConfirmToTransport(action: IAction, status : EActionStatus):void }