/// import { Job } from '../../job'; import { EventEmitter } from 'events'; export interface EngineListData { 'id'?: string[]; 'partition'?: (string | null)[]; 'nameUUID': string[]; 'status'?: string[]; } export interface SetSysProfileFunc { (profileName: string): void; } export interface EngineHeaderFunc { (jobID: string, jobProfileKey: string | undefined, workDir: string): string; } export interface EngineList { (): EventEmitter; } export interface EngineTest { (): string; } export interface EngineKill { (jobList: Job[], overrideBinary?: string): EventEmitter; } export interface EngineExecUser { (): string | undefined; } export interface EngineInterface { generateHeader: EngineHeaderFunc; submitBin: string; queueBin?: string; cancelBin?: string; list: EngineList; kill: EngineKill; testCommand: EngineTest; specs: EngineSpecs; setSysProfile: SetSysProfileFunc; iCache?: string; execUser?: string; } export type EngineSpecs = "slurm" | "sge" | "emulate" | "dummy"; export declare function isEngineSpec(type: string): type is EngineSpecs; export interface BinariesSpec { cancelBin: string; queueBin: string; submitBin: string; } export declare function isBinariesSpec(binaries: any): binaries is BinariesSpec; export interface preprocessorMapFn { (v: string): string; } export type preprocessorMapperType = { [s: string]: preprocessorMapFn; }; export declare function getEngine(engineName?: EngineSpecs, engineBinaries?: BinariesSpec): EngineInterface; export declare class dummyEngine implements EngineInterface { constructor(); specs: EngineSpecs; submitBin: string; setSysProfile(a: string): void; generateHeader(a: string, b: string | undefined): string; list(): EventEmitter<[never]>; kill(jobList: Job[]): EventEmitter<[never]>; testCommand(): string; }