| import { ForkOptions } from "child_process"; |
| |
| export = Farm; |
| |
| declare function Farm(name: string): Farm.Workers; |
| declare function Farm(name: string, exportedMethods: string[]): Farm.Workers; |
| declare function Farm(options: Farm.FarmOptions, name: string): Farm.Workers; |
| declare function Farm( |
| options: Farm.FarmOptions, |
| name: string, |
| exportedMethods: string[], |
| ): Farm.Workers; |
| |
| type WorkerCallback0 = () => void; |
| type WorkerCallback1 = (arg1: any) => void; |
| type WorkerCallback2 = (arg1: any, arg2: any) => void; |
| type WorkerCallback3 = (arg1: any, arg2: any, arg3: any) => void; |
| type WorkerCallback4 = (arg1: any, arg2: any, arg3: any, arg4: any) => void; |
| |
| declare namespace Farm { |
| export function end(workers: Workers, callback?: Function): void; |
| |
| export interface Workers { |
| [x: string]: Workers, |
| (callback: WorkerCallback): void; |
| (arg1: any, callback: WorkerCallback): void; |
| (arg1: any, arg2: any, callback: WorkerCallback): void; |
| (arg1: any, arg2: any, arg3: any, callback: WorkerCallback): void; |
| ( |
| arg1: any, |
| arg2: any, |
| arg3: any, |
| arg4: any, |
| callback: WorkerCallback, |
| ): void; |
| } |
| |
| export interface FarmOptions { |
| maxCallsPerWorker?: number; |
| maxConcurrentWorkers?: number; |
| maxConcurrentCallsPerWorker?: number; |
| maxConcurrentCalls?: number; |
| maxCallTime?: number; |
| maxRetries?: number; |
| autoStart?: boolean; |
| workerOptions?: ForkOptions; |
| } |
| |
| export type WorkerCallback = |
| | WorkerCallback0 |
| | WorkerCallback1 |
| | WorkerCallback2 |
| | WorkerCallback3 |
| | WorkerCallback4; |
| } |