@@ -8,6 +8,7 @@ import { type ScheduleData } from '@breejs/later';
88export = Bree ;
99
1010type AsyncFunction < A extends any [ ] , O > = ( ...args : A ) => Promise < O > ;
11+ type Mutable < T > = { - readonly [ P in keyof T ] : T [ P ] ; } ;
1112
1213declare class Bree extends EventEmitter {
1314 config : Bree . BreeConfigs ;
@@ -86,6 +87,21 @@ declare namespace Bree {
8687
8788 type JobOptions = Required < Pick < Job , 'name' > > & Partial < Omit < Job , 'name' > > ;
8889
90+ type WorkerMetadata = Mutable < Pick < Worker , 'resourceLimits' | 'threadId' > > & {
91+ isMainThread : boolean ;
92+ } ;
93+
94+ type HandlerData = {
95+ name : string ;
96+ worker ?: WorkerMetadata ;
97+ } ;
98+ type ErrorHandlerData = HandlerData & {
99+ err : unknown ;
100+ } ;
101+ type MessageHandlerData = HandlerData & {
102+ message : unknown ;
103+ } ;
104+
89105 type BreeConfigs = {
90106 logger : BreeLogger | boolean ;
91107 root : string | boolean ;
@@ -103,8 +119,8 @@ declare namespace Bree {
103119 defaultExtension : string ;
104120 acceptedExtensions : string [ ] ;
105121 worker : WorkerOptions ;
106- errorHandler ?: ( error : any , workerMetadata : any ) => void ;
107- workerMessageHandler ?: ( message : any , workerMetadata : any ) => void ;
122+ errorHandler ?: ( error : unknown , data : ErrorHandlerData ) => void ;
123+ workerMessageHandler ?: ( data : MessageHandlerData ) => void ;
108124 outputWorkerMetadata : boolean ;
109125 } ;
110126
0 commit comments