56 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| 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;
 | |
| }
 |