{
  "version": 3,
  "sources": ["../../../src/types/messages.ts"],
  "sourcesContent": ["/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable @typescript-eslint/member-ordering */\n\n/** Serialized representation of an Error for transmission between threads. */\nexport interface SerializedError {\n  __error_marker: '$$error'\n  message: string\n  name: string\n  stack?: string\n}\n\n/////////////////////////////\n// Messages sent by master:\n\n/** Types of messages that the master thread can send to a worker. */\nexport enum MasterMessageType {\n  cancel = 'cancel',\n  run = 'run',\n}\n\n/** Message sent by the master to cancel a running job. */\nexport type MasterJobCancelMessage = {\n  type: MasterMessageType.cancel\n  uid: number\n}\n\n/** Message sent by the master to run a function in the worker. */\nexport type MasterJobRunMessage = {\n  type: MasterMessageType.run\n  uid: number\n  method?: string\n  args: any[]\n}\n\n////////////////////////////\n// Messages sent by worker:\n\n/** Types of messages that a worker thread can send to the master. */\nexport enum WorkerMessageType {\n  error = 'error',\n  init = 'init',\n  result = 'result',\n  running = 'running',\n  uncaughtError = 'uncaughtError',\n}\n\n/** Message sent by a worker when an uncaught error occurs. */\nexport type WorkerUncaughtErrorMessage = {\n  type: WorkerMessageType.uncaughtError\n  error: {\n    message: string\n    name: string\n    stack?: string\n  }\n}\n\n/** Message sent by a worker after calling `expose()` to signal its API to the master. */\nexport type WorkerInitMessage = {\n  type: WorkerMessageType.init\n  exposed: { type: 'function' } | { type: 'module'; methods: string[] }\n}\n\n/** Message sent by a worker when a job encounters an error. */\nexport type WorkerJobErrorMessage = {\n  type: WorkerMessageType.error\n  uid: number\n  error: SerializedError\n}\n\n/** Message sent by a worker containing a job's result value. */\nexport type WorkerJobResultMessage = {\n  type: WorkerMessageType.result\n  uid: number\n  complete?: true\n  payload?: any\n}\n\n/** Message sent by a worker when a job starts executing. */\nexport type WorkerJobStartMessage = {\n  type: WorkerMessageType.running\n  uid: number\n  resultType: 'observable' | 'promise'\n}\n"],
  "mappings": ";AAeO,IAAK,oBAAL,kBAAKA,uBAAL;AACL,EAAAA,mBAAA,YAAS;AACT,EAAAA,mBAAA,SAAM;AAFI,SAAAA;AAAA,GAAA;AAuBL,IAAK,oBAAL,kBAAKC,uBAAL;AACL,EAAAA,mBAAA,WAAQ;AACR,EAAAA,mBAAA,UAAO;AACP,EAAAA,mBAAA,YAAS;AACT,EAAAA,mBAAA,aAAU;AACV,EAAAA,mBAAA,mBAAgB;AALN,SAAAA;AAAA,GAAA;",
  "names": ["MasterMessageType", "WorkerMessageType"]
}
