UNPKG

@awesome-ecs/workers

Version:

The Workers package for Awesome ECS. Provides basic implementation for the Worker communication using ECS.

38 lines (37 loc) 1.32 kB
import { n as ThreadWorkerType } from "./worker-type-DYQIrwCV.mjs"; import { PerformanceTimeEntry } from "@awesome-ecs/abstract/utils"; //#region src/abstract/worker-instance.d.ts type WorkerUid = string; type WorkerMessageUid = string; interface WorkerInstanceResponse<TResponseData> { data: TResponseData; metrics?: PerformanceTimeEntry[]; transfer?: ArrayBufferLike[]; } interface WorkerInstance<TRequestData, TResponseData> { handle(message: TRequestData): WorkerInstanceResponse<TResponseData>; } //#endregion //#region src/abstract/worker-message.d.ts declare enum WorkerMessageType { health = "health", data = "data" } interface WorkerRequestMessage<TRequestData> { workerType: ThreadWorkerType; messageType: WorkerMessageType; messageUid: WorkerMessageUid; request: TRequestData; } interface WorkerResponseMessage<TResponseData> { workerType: ThreadWorkerType; workerUid?: WorkerUid; messageType: WorkerMessageType; messageUid: WorkerMessageUid; data: TResponseData; transfer?: ArrayBufferLike[]; metrics?: PerformanceTimeEntry[]; } //#endregion export { WorkerInstanceResponse as a, WorkerInstance as i, WorkerRequestMessage as n, WorkerMessageUid as o, WorkerResponseMessage as r, WorkerUid as s, WorkerMessageType as t }; //# sourceMappingURL=worker-message-b803N7ST.d.mts.map