import { Queue } from '@terascope/core-utils'; import { SliceCompletePayload, EnqueuedWorker, Slice } from '@terascope/types'; import * as core from '../messenger/index.js'; import * as i from './interfaces.js'; export declare class Server extends core.Server { private _activeWorkers; queue: Queue; executionReady: boolean; constructor(opts: i.ServerOptions); start(): Promise; shutdown(): Promise; dequeueWorker(slice: Slice): string | null; dispatchSlice(slice: Slice, workerId: string): Promise; onSliceSuccess(fn: (workerId: string, payload: SliceCompletePayload) => void): void; onSliceFailure(fn: (workerId: string, payload: SliceCompletePayload) => void): void; sendExecutionFinishedToAll(exId: string): Promise<(core.Message | null)[]>; get activeWorkerCount(): number; get workerQueueSize(): number; private onConnection; private _workerEnqueue; private _workerDequeue; private _workerRemove; } //# sourceMappingURL=server.d.ts.map