import { n as WorkerThreadHealthResponse, r as WorkerThreadEventMessageResponseData } from "../worker-health-DB_1_gAM.mjs";
import { t as WorkerThreadEntity } from "../worker-thread-DpRAj7nR.mjs";
import { IEntityEvent } from "@awesome-ecs/abstract/entities";
import { ISystemContext, ISystemEventMiddleware, ISystemMiddleware } from "@awesome-ecs/abstract/systems";

//#region src/systems/middlewares/initializers/worker-thread-health-schedule.d.ts
declare class WorkerThreadHealthScheduleSystem implements ISystemMiddleware<WorkerThreadEntity> {
  action(context: ISystemContext<WorkerThreadEntity>): void;
  cleanup(context: ISystemContext<WorkerThreadEntity>): void;
}
//#endregion
//#region src/systems/middlewares/initializers/worker-thread-message-subscription.d.ts
declare class WorkerThreadMessageSubscriptionSystem implements ISystemMiddleware<WorkerThreadEntity> {
  shouldRun(context: ISystemContext<WorkerThreadEntity>): boolean;
  action(context: ISystemContext<WorkerThreadEntity>): void;
}
//#endregion
//#region src/systems/middlewares/updaters/worker-thread-data-complete.d.ts
declare class WorkerThreadDataCompleteSystem implements ISystemEventMiddleware<WorkerThreadEntity, WorkerThreadEventMessageResponseData<unknown>> {
  shouldRun(context: ISystemContext<WorkerThreadEntity>, event: IEntityEvent<WorkerThreadEventMessageResponseData<unknown>>): boolean;
  action(context: ISystemContext<WorkerThreadEntity>, event: IEntityEvent<WorkerThreadEventMessageResponseData<unknown>>): void;
}
//#endregion
//#region src/systems/middlewares/updaters/worker-thread-health-request.d.ts
declare class WorkerThreadHealthRequestSystem implements ISystemMiddleware<WorkerThreadEntity> {
  private readonly maxHeartbeatsPending;
  shouldRun(context: ISystemContext<WorkerThreadEntity>): boolean;
  action(context: ISystemContext<WorkerThreadEntity>): void;
  private sendHeartbeatMessage;
}
//#endregion
//#region src/systems/middlewares/updaters/worker-thread-health-response.d.ts
declare class WorkerThreadHealthResponseSystem implements ISystemEventMiddleware<WorkerThreadEntity, WorkerThreadEventMessageResponseData<WorkerThreadHealthResponse>> {
  shouldRun(context: ISystemContext<WorkerThreadEntity>, event: IEntityEvent<WorkerThreadEventMessageResponseData<WorkerThreadHealthResponse>>): boolean;
  action(context: ISystemContext<WorkerThreadEntity>, event: IEntityEvent<WorkerThreadEventMessageResponseData<WorkerThreadHealthResponse>>): void;
  private isEventForWorker;
}
//#endregion
export { WorkerThreadDataCompleteSystem, WorkerThreadHealthRequestSystem, WorkerThreadHealthResponseSystem, WorkerThreadHealthScheduleSystem, WorkerThreadMessageSubscriptionSystem };
//# sourceMappingURL=index.d.mts.map